@substrate-system/debug 0.7.7 → 0.7.8
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/README.md +38 -7
- package/dist/browser.d.ts +3 -3
- package/dist/browser.d.ts.map +1 -1
- package/dist/browser.js +19 -7
- package/dist/browser.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -21,6 +21,8 @@ Plus, [see the docs](https://substrate-system.github.io/debug/) generated by typ
|
|
|
21
21
|
<!-- toc -->
|
|
22
22
|
|
|
23
23
|
- [install](#install)
|
|
24
|
+
- [TL;DR](#tldr)
|
|
25
|
+
- [configure](#configure)
|
|
24
26
|
- [example](#example)
|
|
25
27
|
* [browser](#browser)
|
|
26
28
|
* [Node JS](#node-js)
|
|
@@ -36,11 +38,44 @@ Plus, [see the docs](https://substrate-system.github.io/debug/) generated by typ
|
|
|
36
38
|
npm i -D @substrate-system/debug
|
|
37
39
|
```
|
|
38
40
|
|
|
39
|
-
Use this with [vite](https://vitejs.dev/) in the [browser](#browser) or
|
|
41
|
+
Use this with [vite](https://vitejs.dev/) in the [browser](#browser), or
|
|
40
42
|
in [node](#node-JS).
|
|
41
43
|
|
|
42
44
|
------------------------------------------------------------------
|
|
43
45
|
|
|
46
|
+
## TL;DR
|
|
47
|
+
|
|
48
|
+
There are two env variables to work with, `VITE_DEBUG` and `VITE_DEBUG_MODE` in the browser, and `DEBUG` and `NODE_ENV` in node.
|
|
49
|
+
|
|
50
|
+
To determine if we should log something, first we check `NODE_ENV` / `VITE_DEBUG_MODE`. By default, in the browser we check `import.meta.env.DEV`, and in node, `NODE_ENV` should be either `development` or `test`. But -- [you can configure this](#configure).
|
|
51
|
+
|
|
52
|
+
Next we check the namespace + the env variable `VITE_DEBUG` in the browser, and `DEBUG` in node.
|
|
53
|
+
|
|
54
|
+
If the `DEBUG`/`VITE_DEBUG` variable is not set and you are in dev mode, then we log. If the `DEBUG`/`VITE_DEBUG` variable is set, then we only log if it matches the namespace that was passed in to debug, i.e.
|
|
55
|
+
|
|
56
|
+
```js
|
|
57
|
+
import Debug from '@substrate-system/debug'
|
|
58
|
+
const debug = Debug('hello-123')
|
|
59
|
+
|
|
60
|
+
debug('hello world')
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
The character `*` is a wildcard. In the preceding example, `'hello world` would be logged if we started vite with either `VITE_DEBUG=hello-*` or `VITE_DEBUG=hello-123`.
|
|
64
|
+
|
|
65
|
+
|
|
66
|
+
------------------------------------------------------------------
|
|
67
|
+
|
|
68
|
+
## configure
|
|
69
|
+
|
|
70
|
+
Set the property `shouldLog` on `Debug` to configure which modes we log in. In the browser, this function gets called with `import.meta.env.MODE`. In node, it is called with `process.env.NODE_ENV`.
|
|
71
|
+
|
|
72
|
+
```js
|
|
73
|
+
import Debug from '@substrate-system/debug'
|
|
74
|
+
Debug.shouldLog = (envString) => {
|
|
75
|
+
return (envString === 'staging' || import.meta.env.DEV)
|
|
76
|
+
}
|
|
77
|
+
```
|
|
78
|
+
|
|
44
79
|
## example
|
|
45
80
|
|
|
46
81
|
### browser
|
|
@@ -72,17 +107,13 @@ const debug = Debug()
|
|
|
72
107
|
debug('debug works') // check if `import.meta.env.DEV`
|
|
73
108
|
```
|
|
74
109
|
|
|
75
|
-
####
|
|
76
|
-
You can pass in an env variable of `VITE_DEBUG_MODE`, and then `debug` will
|
|
77
|
-
check for that mode in vite.
|
|
78
|
-
|
|
79
|
-
##### For example, in the staging environment:
|
|
110
|
+
#### For example, in the staging environment:
|
|
80
111
|
|
|
81
112
|
```sh
|
|
82
113
|
VITE_DEBUG_MODE=staging vite build --mode staging
|
|
83
114
|
```
|
|
84
115
|
|
|
85
|
-
|
|
116
|
+
#### use multiple modes
|
|
86
117
|
Can parse a comma separated list of modes.
|
|
87
118
|
|
|
88
119
|
A `.env` file like this:
|
package/dist/browser.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
interface
|
|
2
|
-
(env?: string): void;
|
|
1
|
+
interface CreateDebugger {
|
|
2
|
+
(env?: string): (...args: any[]) => void;
|
|
3
3
|
shouldLog?: (env: string) => boolean;
|
|
4
4
|
}
|
|
5
|
-
declare let createDebug:
|
|
5
|
+
declare let createDebug: CreateDebugger;
|
|
6
6
|
export { createDebug };
|
|
7
7
|
export default createDebug;
|
|
8
8
|
//# sourceMappingURL=browser.d.ts.map
|
package/dist/browser.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAyFA,UAAU,
|
|
1
|
+
{"version":3,"file":"browser.d.ts","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAyFA,UAAU,cAAc;IACpB,CAAC,GAAG,CAAC,EAAC,MAAM,GAAE,CAAC,GAAG,IAAI,EAAC,GAAG,EAAE,KAAG,IAAI,CAAC;IACpC,SAAS,CAAC,EAAC,CAAC,GAAG,EAAC,MAAM,KAAG,OAAO,CAAC;CACpC;AAGD,QAAA,IAAI,WAAW,EAAC,cAAsD,CAAA;AA+CtE,OAAO,EAAE,WAAW,EAAE,CAAA;AACtB,eAAe,WAAW,CAAA"}
|
package/dist/browser.js
CHANGED
|
@@ -110,8 +110,14 @@ if (import.meta?.env?.DEV ||
|
|
|
110
110
|
return debug;
|
|
111
111
|
};
|
|
112
112
|
createDebug.shouldLog = function (envString) {
|
|
113
|
-
|
|
114
|
-
|
|
113
|
+
console.log('env string', envString);
|
|
114
|
+
if (!envString) {
|
|
115
|
+
console.log('no env string', import.meta.env.DEV);
|
|
116
|
+
return import.meta.env.DEV;
|
|
117
|
+
}
|
|
118
|
+
else {
|
|
119
|
+
return (envString === 'development' || envString === 'test');
|
|
120
|
+
}
|
|
115
121
|
};
|
|
116
122
|
}
|
|
117
123
|
export { createDebug };
|
|
@@ -120,15 +126,21 @@ export default createDebug;
|
|
|
120
126
|
* Check if the given namespace is enabled.
|
|
121
127
|
*/
|
|
122
128
|
function isEnabled(namespace) {
|
|
123
|
-
if (import.meta.env?.VITE_DEBUG?.includes('*'))
|
|
124
|
-
return true;
|
|
125
129
|
// if no namespace, check if we are in dev mode
|
|
126
130
|
if (!namespace) {
|
|
127
|
-
|
|
131
|
+
const ok = createDebug.shouldLog(import.meta.env.VITE_DEBUG_MODE);
|
|
132
|
+
// check if we were passed a `vite_debug` variable
|
|
133
|
+
if (ok && !import.meta.env.VITE_DEBUG)
|
|
134
|
+
return true;
|
|
135
|
+
return false;
|
|
128
136
|
}
|
|
129
137
|
// else, we do have a namespace
|
|
130
|
-
|
|
131
|
-
|
|
138
|
+
if (createDebug.shouldLog(import.meta.env.VITE_DEBUG_MODE)) {
|
|
139
|
+
// are we in dev mode? then check the namespace
|
|
140
|
+
const envVars = createRegexFromEnvVar(import.meta.env?.VITE_DEBUG);
|
|
141
|
+
return envVars.some(regex => regex.test(namespace));
|
|
142
|
+
}
|
|
143
|
+
return false;
|
|
132
144
|
}
|
|
133
145
|
/**
|
|
134
146
|
* Map %j to `JSON.stringify()`, since no Web Inspectors do that by default.
|
package/dist/browser.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,oBAAoB,EACpB,MAAM,EACN,WAAW,EACX,qBAAqB,EACxB,MAAM,aAAa,CAAA;AACpB,OAAO,QAAQ,MAAM,IAAI,CAAA;AAEzB,MAAM,MAAM,GAAG;IACX,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;IACT,SAAS;CACZ,CAAA;AAED,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAA;AAOrC,IAAI,eAAe,GAAU,EAAE,CAAA;AAC/B,IAAI,WAAW,
|
|
1
|
+
{"version":3,"file":"browser.js","sourceRoot":"","sources":["../src/browser.ts"],"names":[],"mappings":"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"}
|