1 | const debug = require('debug');
|
2 |
|
3 | let debugFunc;
|
4 | let phase = 'default';
|
5 | let namespace = '';
|
6 | const newDebug = () => {
|
7 | debugFunc = namespace
|
8 | ? debug(`fetch-mock:${phase}:${namespace}`)
|
9 | : debug(`fetch-mock:${phase}`);
|
10 | };
|
11 |
|
12 | const newDebugSandbox = (ns) => debug(`fetch-mock:${phase}:${ns}`);
|
13 |
|
14 | newDebug();
|
15 |
|
16 | module.exports = {
|
17 | debug: (...args) => {
|
18 | debugFunc(...args);
|
19 | },
|
20 | setDebugNamespace: (str) => {
|
21 | namespace = str;
|
22 | newDebug();
|
23 | },
|
24 | setDebugPhase: (str) => {
|
25 | phase = str || 'default';
|
26 | newDebug();
|
27 | },
|
28 | getDebug: (namespace) => newDebugSandbox(namespace),
|
29 | };
|