@percy/sdk-utils 1.10.3 → 1.10.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/bundle.js +26 -35
- package/dist/logger.js +26 -37
- package/package.json +2 -2
- package/test/client.js +30 -1
- package/test/helpers.js +27 -1
package/dist/bundle.js
CHANGED
|
@@ -24,43 +24,34 @@
|
|
|
24
24
|
return logger.log(namespace, lvl, ...a);
|
|
25
25
|
}
|
|
26
26
|
}), {});
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
if (!process.env.__PERCY_BROWSERIFIED__) label = `\u001b[95m${label}\u001b[39m`;
|
|
53
|
-
msg = `[${label}] ${err && debug && msg.stack || msg}`;
|
|
54
|
-
|
|
55
|
-
if (process.env.__PERCY_BROWSERIFIED__) {
|
|
56
|
-
// use console[warn|error|log] in browsers
|
|
57
|
-
console[['warn', 'error'].includes(lvl) ? lvl : 'log'](msg);
|
|
58
|
-
} else {
|
|
59
|
-
// use process[stdout|stderr].write in node
|
|
60
|
-
process[lvl === 'info' ? 'stdout' : 'stderr'].write(msg + '\n');
|
|
27
|
+
}
|
|
28
|
+
Object.assign(logger, {
|
|
29
|
+
// Set and/or return the local loglevel
|
|
30
|
+
loglevel: function () {
|
|
31
|
+
let lvl = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : logger.loglevel.lvl;
|
|
32
|
+
return logger.loglevel.lvl = lvl || process.env.PERCY_LOGLEVEL || 'info';
|
|
33
|
+
},
|
|
34
|
+
// Track and send/write logs for the specified namespace and log level
|
|
35
|
+
log: (ns, lvl, msg, meta) => {
|
|
36
|
+
let err = typeof msg !== 'string' && (lvl === 'error' || lvl === 'debug'); // check if the specific level is within the local loglevel range
|
|
37
|
+
|
|
38
|
+
if (LOG_LEVELS[lvl] != null && LOG_LEVELS[lvl] >= LOG_LEVELS[logger.loglevel()]) {
|
|
39
|
+
let debug = logger.loglevel() === 'debug';
|
|
40
|
+
let label = debug ? `percy:${ns}` : 'percy'; // colorize the label when possible for consistency with the CLI logger
|
|
41
|
+
|
|
42
|
+
if (!process.env.__PERCY_BROWSERIFIED__) label = `\u001b[95m${label}\u001b[39m`;
|
|
43
|
+
msg = `[${label}] ${err && debug && msg.stack || msg}`;
|
|
44
|
+
|
|
45
|
+
if (process.env.__PERCY_BROWSERIFIED__) {
|
|
46
|
+
// use console[warn|error|log] in browsers
|
|
47
|
+
console[['warn', 'error'].includes(lvl) ? lvl : 'log'](msg);
|
|
48
|
+
} else {
|
|
49
|
+
// use process[stdout|stderr].write in node
|
|
50
|
+
process[lvl === 'info' ? 'stdout' : 'stderr'].write(msg + '\n');
|
|
51
|
+
}
|
|
61
52
|
}
|
|
62
53
|
}
|
|
63
|
-
};
|
|
54
|
+
});
|
|
64
55
|
|
|
65
56
|
// helper to create a version object from a string
|
|
66
57
|
function toVersion(str) {
|
package/dist/logger.js
CHANGED
|
@@ -17,44 +17,33 @@ function logger(namespace) {
|
|
|
17
17
|
return Object.keys(LOG_LEVELS).reduce((ns, lvl) => Object.assign(ns, {
|
|
18
18
|
[lvl]: (...a) => logger.log(namespace, lvl, ...a)
|
|
19
19
|
}), {});
|
|
20
|
-
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
if (!process.env.__PERCY_BROWSERIFIED__) label = `\u001b[95m${label}\u001b[39m`;
|
|
47
|
-
msg = `[${label}] ${err && debug && msg.stack || msg}`;
|
|
48
|
-
|
|
49
|
-
if (process.env.__PERCY_BROWSERIFIED__) {
|
|
50
|
-
// use console[warn|error|log] in browsers
|
|
51
|
-
console[['warn', 'error'].includes(lvl) ? lvl : 'log'](msg);
|
|
52
|
-
} else {
|
|
53
|
-
// use process[stdout|stderr].write in node
|
|
54
|
-
process[lvl === 'info' ? 'stdout' : 'stderr'].write(msg + '\n');
|
|
20
|
+
}
|
|
21
|
+
|
|
22
|
+
Object.assign(logger, {
|
|
23
|
+
// Set and/or return the local loglevel
|
|
24
|
+
loglevel: (lvl = logger.loglevel.lvl) => {
|
|
25
|
+
return logger.loglevel.lvl = lvl || process.env.PERCY_LOGLEVEL || 'info';
|
|
26
|
+
},
|
|
27
|
+
// Track and send/write logs for the specified namespace and log level
|
|
28
|
+
log: (ns, lvl, msg, meta) => {
|
|
29
|
+
let err = typeof msg !== 'string' && (lvl === 'error' || lvl === 'debug'); // check if the specific level is within the local loglevel range
|
|
30
|
+
|
|
31
|
+
if (LOG_LEVELS[lvl] != null && LOG_LEVELS[lvl] >= LOG_LEVELS[logger.loglevel()]) {
|
|
32
|
+
let debug = logger.loglevel() === 'debug';
|
|
33
|
+
let label = debug ? `percy:${ns}` : 'percy'; // colorize the label when possible for consistency with the CLI logger
|
|
34
|
+
|
|
35
|
+
if (!process.env.__PERCY_BROWSERIFIED__) label = `\u001b[95m${label}\u001b[39m`;
|
|
36
|
+
msg = `[${label}] ${err && debug && msg.stack || msg}`;
|
|
37
|
+
|
|
38
|
+
if (process.env.__PERCY_BROWSERIFIED__) {
|
|
39
|
+
// use console[warn|error|log] in browsers
|
|
40
|
+
console[['warn', 'error'].includes(lvl) ? lvl : 'log'](msg);
|
|
41
|
+
} else {
|
|
42
|
+
// use process[stdout|stderr].write in node
|
|
43
|
+
process[lvl === 'info' ? 'stdout' : 'stderr'].write(msg + '\n');
|
|
44
|
+
}
|
|
55
45
|
}
|
|
56
46
|
}
|
|
57
|
-
};
|
|
58
|
-
|
|
47
|
+
});
|
|
59
48
|
var _default = logger;
|
|
60
49
|
exports.default = _default;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@percy/sdk-utils",
|
|
3
|
-
"version": "1.10.
|
|
3
|
+
"version": "1.10.4",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"repository": {
|
|
6
6
|
"type": "git",
|
|
@@ -50,5 +50,5 @@
|
|
|
50
50
|
]
|
|
51
51
|
}
|
|
52
52
|
},
|
|
53
|
-
"gitHead": "
|
|
53
|
+
"gitHead": "16a9a410bfcb8eab51b86a08cff12d8d35e4747e"
|
|
54
54
|
}
|
package/test/client.js
CHANGED
|
@@ -16,6 +16,9 @@
|
|
|
16
16
|
const utils = require$$0__default["default"];
|
|
17
17
|
const helpers = {
|
|
18
18
|
async setupTest() {
|
|
19
|
+
let {
|
|
20
|
+
logger = true
|
|
21
|
+
} = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
|
|
19
22
|
utils.percy.version = '';
|
|
20
23
|
delete utils.percy.config;
|
|
21
24
|
delete utils.percy.enabled;
|
|
@@ -24,6 +27,8 @@
|
|
|
24
27
|
delete utils.logger.loglevel.lvl;
|
|
25
28
|
delete process.env.PERCY_LOGLEVEL;
|
|
26
29
|
delete process.env.PERCY_SERVER_ADDRESS;
|
|
30
|
+
utils.logger.log = helpers.logger.__log__;
|
|
31
|
+
if (logger) helpers.logger.mock();
|
|
27
32
|
await helpers.test('reset');
|
|
28
33
|
},
|
|
29
34
|
|
|
@@ -40,8 +45,32 @@
|
|
|
40
45
|
|
|
41
46
|
get testSnapshotURL() {
|
|
42
47
|
return `${utils.percy.address}/test/snapshot`;
|
|
43
|
-
}
|
|
48
|
+
},
|
|
49
|
+
|
|
50
|
+
logger: {
|
|
51
|
+
__log__: utils.logger.log,
|
|
52
|
+
loglevel: utils.logger.loglevel,
|
|
53
|
+
stdout: [],
|
|
54
|
+
stderr: [],
|
|
55
|
+
|
|
56
|
+
mock() {
|
|
57
|
+
helpers.logger.reset();
|
|
44
58
|
|
|
59
|
+
utils.logger.log = (ns, lvl, msg) => {
|
|
60
|
+
if (lvl === 'debug' && helpers.logger.loglevel.lvl !== 'debug') return;
|
|
61
|
+
msg = `[percy${lvl === 'debug' ? `:${ns}` : ''}] ${msg}`;
|
|
62
|
+
let io = lvl === 'info' ? 'stdout' : 'stderr';
|
|
63
|
+
helpers.logger[io].push(msg);
|
|
64
|
+
};
|
|
65
|
+
},
|
|
66
|
+
|
|
67
|
+
reset() {
|
|
68
|
+
helpers.logger.stdout = [];
|
|
69
|
+
helpers.logger.stderr = [];
|
|
70
|
+
helpers.logger.loglevel('info');
|
|
71
|
+
}
|
|
72
|
+
|
|
73
|
+
}
|
|
45
74
|
};
|
|
46
75
|
var helpers_1 = helpers;
|
|
47
76
|
|
package/test/helpers.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
const utils = require('@percy/sdk-utils');
|
|
2
2
|
|
|
3
3
|
const helpers = {
|
|
4
|
-
async setupTest() {
|
|
4
|
+
async setupTest({ logger = true } = {}) {
|
|
5
5
|
utils.percy.version = '';
|
|
6
6
|
delete utils.percy.config;
|
|
7
7
|
delete utils.percy.enabled;
|
|
@@ -10,6 +10,8 @@ const helpers = {
|
|
|
10
10
|
delete utils.logger.loglevel.lvl;
|
|
11
11
|
delete process.env.PERCY_LOGLEVEL;
|
|
12
12
|
delete process.env.PERCY_SERVER_ADDRESS;
|
|
13
|
+
utils.logger.log = helpers.logger.__log__;
|
|
14
|
+
if (logger) helpers.logger.mock();
|
|
13
15
|
await helpers.test('reset');
|
|
14
16
|
},
|
|
15
17
|
|
|
@@ -26,6 +28,30 @@ const helpers = {
|
|
|
26
28
|
|
|
27
29
|
get testSnapshotURL() {
|
|
28
30
|
return `${utils.percy.address}/test/snapshot`;
|
|
31
|
+
},
|
|
32
|
+
|
|
33
|
+
logger: {
|
|
34
|
+
__log__: utils.logger.log,
|
|
35
|
+
loglevel: utils.logger.loglevel,
|
|
36
|
+
stdout: [],
|
|
37
|
+
stderr: [],
|
|
38
|
+
|
|
39
|
+
mock() {
|
|
40
|
+
helpers.logger.reset();
|
|
41
|
+
|
|
42
|
+
utils.logger.log = (ns, lvl, msg) => {
|
|
43
|
+
if (lvl === 'debug' && helpers.logger.loglevel.lvl !== 'debug') return;
|
|
44
|
+
msg = `[percy${lvl === 'debug' ? `:${ns}` : ''}] ${msg}`;
|
|
45
|
+
let io = (lvl === 'info') ? 'stdout' : 'stderr';
|
|
46
|
+
helpers.logger[io].push(msg);
|
|
47
|
+
};
|
|
48
|
+
},
|
|
49
|
+
|
|
50
|
+
reset() {
|
|
51
|
+
helpers.logger.stdout = [];
|
|
52
|
+
helpers.logger.stderr = [];
|
|
53
|
+
helpers.logger.loglevel('info');
|
|
54
|
+
}
|
|
29
55
|
}
|
|
30
56
|
};
|
|
31
57
|
|