@@ -13,22 +13,22 @@ interface CommonjsExecutorOptions {
13
13
14
14
const _require = createRequire ( import . meta. url )
15
15
16
- interface PrivateNodeModule extends NodeModule {
16
+ interface PrivateNodeModule extends NodeJS . Module {
17
17
_compile : ( code : string , filename : string ) => void
18
18
}
19
19
20
- const requiresCache = new WeakMap < NodeModule , NodeRequire > ( )
20
+ const requiresCache = new WeakMap < NodeJS . Module , NodeJS . Require > ( )
21
21
22
22
export class CommonjsExecutor {
23
23
private context : vm . Context
24
- private requireCache = new Map < string , NodeModule > ( )
24
+ private requireCache = new Map < string , NodeJS . Module > ( )
25
25
private publicRequireCache = this . createProxyCache ( )
26
26
27
27
private moduleCache = new Map < string , VMModule | Promise < VMModule > > ( )
28
- private builtinCache : Record < string , NodeModule > = Object . create ( null )
28
+ private builtinCache : Record < string , NodeJS . Module > = Object . create ( null )
29
29
private extensions : Record <
30
30
string ,
31
- ( m : NodeModule , filename : string ) => unknown
31
+ ( m : NodeJS . Module , filename : string ) => unknown
32
32
> = Object . create ( null )
33
33
34
34
private fs : FileMap
@@ -135,7 +135,7 @@ export class CommonjsExecutor {
135
135
static _cache = executor . moduleCache
136
136
static _extensions = executor . extensions
137
137
138
- static createRequire = ( filename : string ) => {
138
+ static createRequire = ( filename : string | URL ) => {
139
139
return executor . createRequire ( filename )
140
140
}
141
141
@@ -169,17 +169,17 @@ export class CommonjsExecutor {
169
169
this . extensions [ '.json' ] = this . requireJson
170
170
}
171
171
172
- private requireJs = ( m : NodeModule , filename : string ) => {
172
+ private requireJs = ( m : NodeJS . Module , filename : string ) => {
173
173
const content = this . fs . readFile ( filename ) ;
174
174
( m as PrivateNodeModule ) . _compile ( content , filename )
175
175
}
176
176
177
- private requireJson = ( m : NodeModule , filename : string ) => {
177
+ private requireJson = ( m : NodeJS . Module , filename : string ) => {
178
178
const code = this . fs . readFile ( filename )
179
179
m . exports = JSON . parse ( code )
180
180
}
181
181
182
- public createRequire = ( filename : string ) => {
182
+ public createRequire = ( filename : string | URL ) => {
183
183
const _require = createRequire ( filename )
184
184
const require = ( ( id : string ) => {
185
185
const resolved = _require . resolve ( id )
@@ -189,7 +189,7 @@ export class CommonjsExecutor {
189
189
}
190
190
const module = new this . Module ( resolved )
191
191
return this . loadCommonJSModule ( module , resolved )
192
- } ) as NodeRequire
192
+ } ) as NodeJS . Require
193
193
require . resolve = _require . resolve
194
194
Object . defineProperty ( require , 'extensions' , {
195
195
get : ( ) => this . extensions ,
@@ -220,7 +220,7 @@ export class CommonjsExecutor {
220
220
221
221
// very naive implementation for Node.js require
222
222
private loadCommonJSModule (
223
- module : NodeModule ,
223
+ module : NodeJS . Module ,
224
224
filename : string ,
225
225
) : Record < string , unknown > {
226
226
const cached = this . requireCache . get ( filename )
0 commit comments