@@ -21,6 +21,8 @@ class PolyfillsManager {
21
21
this . libs = new Map ( ) ;
22
22
/** @type {Map<string, string|boolean> } */
23
23
this . alias = new Map ( ) ;
24
+ /** @type {Map<string, string|boolean> } */
25
+ this . external = new Map ( ) ;
24
26
}
25
27
26
28
/**
@@ -50,9 +52,18 @@ class PolyfillsManager {
50
52
this . alias . set ( name , path ) ;
51
53
}
52
54
55
+ /**
56
+ * Sets a external libs.
57
+ * @param {string } name - Name of the external.
58
+ * @param {string|boolean } path - Path to the polyfill or a boolean value.
59
+ */
60
+ setExternal ( name , path ) {
61
+ this . external . set ( name , path ) ;
62
+ }
63
+
53
64
/**
54
65
* Builds and retrieves the polyfills for Node and globals.
55
- * @returns {{ libs: Map<string, string|boolean>, globals: Map<string, string>, alias: Map<string, string> } } - Object containing libs and globals.
66
+ * @returns {{ libs: Map<string, string|boolean>, globals: Map<string, string>, alias: Map<string, string>, external: Map<string, string> } } - Object containing libs and globals.
56
67
*/
57
68
buildPolyfills ( ) {
58
69
this . setGlobal ( 'buffer' , `${ nodePolyfillsPath } /globals/buffer.js` ) ;
@@ -70,7 +81,6 @@ class PolyfillsManager {
70
81
) ;
71
82
72
83
this . setLib ( 'accepts' , require . resolve ( 'accepts' ) ) ;
73
- this . setLib ( 'async_hooks' , `${ nodePolyfillsPath } /_empty.js` ) ;
74
84
this . setLib ( 'buffer' , require . resolve ( 'buffer/' ) ) ;
75
85
this . setLib ( 'child_process' , `${ nodePolyfillsPath } /_empty.js` ) ;
76
86
this . setLib ( 'cluster' , `${ nodePolyfillsPath } /_empty.js` ) ;
@@ -131,7 +141,14 @@ class PolyfillsManager {
131
141
this . setAlias ( 'util' , require . resolve ( 'util/' ) ) ;
132
142
this . setAlias ( 'process' , `${ nodePolyfillsPath } /globals/process.js` ) ;
133
143
134
- return { libs : this . libs , globals : this . globals , alias : this . alias } ;
144
+ this . setExternal ( 'async_hooks' , `${ nodePolyfillsPath } /async_hooks.js` ) ;
145
+
146
+ return {
147
+ libs : this . libs ,
148
+ globals : this . globals ,
149
+ alias : this . alias ,
150
+ external : this . external ,
151
+ } ;
135
152
}
136
153
}
137
154
0 commit comments