diff options
Diffstat (limited to 'src/index.js')
-rw-r--r-- | src/index.js | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/src/index.js b/src/index.js index 28246e3..be809c6 100644 --- a/src/index.js +++ b/src/index.js | |||
@@ -202,6 +202,19 @@ module.exports = function purescriptLoader(source, map) { | |||
202 | const baseModulePath = path.join(this.rootContext, filename); | 202 | const baseModulePath = path.join(this.rootContext, filename); |
203 | this.addDependency(baseModulePath); | 203 | this.addDependency(baseModulePath); |
204 | 204 | ||
205 | const foreignModulesErrorCodes = [ | ||
206 | 'ErrorParsingFFIModule', | ||
207 | 'MissingFFIImplementations', | ||
208 | 'UnusedFFIImplementations', | ||
209 | 'MissingFFIModule' | ||
210 | ]; | ||
211 | for (const code of foreignModulesErrorCodes) { | ||
212 | if (error.includes(code)) { | ||
213 | const resolved = utils.resolveForeignModule(baseModulePath); | ||
214 | this.addDependency(resolved); | ||
215 | } | ||
216 | } | ||
217 | |||
205 | const matchErrModuleName = /in module ((?:\w+\.)*\w+)/; | 218 | const matchErrModuleName = /in module ((?:\w+\.)*\w+)/; |
206 | const [, baseModuleName] = matchErrModuleName.exec(error) || []; | 219 | const [, baseModuleName] = matchErrModuleName.exec(error) || []; |
207 | if (!baseModuleName) continue; | 220 | if (!baseModuleName) continue; |