@@ -17,11 +17,6 @@ function setup(env) {
17
17
createDebug [ key ] = env [ key ] ;
18
18
} ) ;
19
19
20
- /**
21
- * Active `debug` instances.
22
- */
23
- createDebug . instances = [ ] ;
24
-
25
20
/**
26
21
* The currently active debug mode names, and names to skip.
27
22
*/
@@ -63,6 +58,7 @@ function setup(env) {
63
58
*/
64
59
function createDebug ( namespace ) {
65
60
let prevTime ;
61
+ let enableOverride = null ;
66
62
67
63
function debug ( ...args ) {
68
64
// Disabled?
@@ -115,31 +111,27 @@ function setup(env) {
115
111
}
116
112
117
113
debug . namespace = namespace ;
118
- debug . enabled = createDebug . enabled ( namespace ) ;
119
114
debug . useColors = createDebug . useColors ( ) ;
120
115
debug . color = createDebug . selectColor ( namespace ) ;
121
- debug . destroy = destroy ;
122
116
debug . extend = extend ;
123
117
118
+ Object . defineProperty ( debug , 'enabled' , {
119
+ enumerable : true ,
120
+ configurable : false ,
121
+ get : ( ) => enableOverride === null ? createDebug . enabled ( namespace ) : enableOverride ,
122
+ set : v => {
123
+ enableOverride = v ;
124
+ }
125
+ } ) ;
126
+
124
127
// Env-specific initialization logic for debug instances
125
128
if ( typeof createDebug . init === 'function' ) {
126
129
createDebug . init ( debug ) ;
127
130
}
128
131
129
- createDebug . instances . push ( debug ) ;
130
-
131
132
return debug ;
132
133
}
133
134
134
- function destroy ( ) {
135
- const index = createDebug . instances . indexOf ( this ) ;
136
- if ( index !== - 1 ) {
137
- createDebug . instances . splice ( index , 1 ) ;
138
- return true ;
139
- }
140
- return false ;
141
- }
142
-
143
135
function extend ( namespace , delimiter ) {
144
136
const newDebug = createDebug ( this . namespace + ( typeof delimiter === 'undefined' ? ':' : delimiter ) + namespace ) ;
145
137
newDebug . log = this . log ;
@@ -177,11 +169,6 @@ function setup(env) {
177
169
createDebug . names . push ( new RegExp ( '^' + namespaces + '$' ) ) ;
178
170
}
179
171
}
180
-
181
- for ( i = 0 ; i < createDebug . instances . length ; i ++ ) {
182
- const instance = createDebug . instances [ i ] ;
183
- instance . enabled = createDebug . enabled ( instance . namespace ) ;
184
- }
185
172
}
186
173
187
174
/**
0 commit comments