-
-
Save barockok/773288c2910655a55d80 to your computer and use it in GitHub Desktop.
sandboxed-module error with transitive ES6 deps ( solve with babel )
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
export default 'bar'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
module.exports = 'bar'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// Does work: | |
// import bar from './bar'; | |
// Doesn't work: | |
import bar from './bar-es6'; | |
console.log('foo: bar:', bar); | |
export default 'foo'; |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
var babel = require('babel'); | |
var SandboxedModule = require('sandboxed-module'); | |
var assign = require('lodash-node/modern/objects/assign'); | |
var es6 = function (source) { | |
return babel | |
.transform(source, { | |
modules: 'commonStrict' | |
}).code | |
}; | |
var sandboxEs6Require = function (moduleId, options) { | |
var defaultOptions = { sourceTransformers: { es6 } }; | |
return SandboxedModule.require(moduleId, assign({}, defaultOptions, options)).default; | |
}; | |
var foo = sandboxEs6Require('./foo', { requires: { http: 'mocked http' } }); | |
console.log('main: foo:', foo); |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"name": "sandbox-test", | |
"version": "0.0.0", | |
"dependencies": { | |
"lodash-node": "^2.4.1", | |
"sandboxed-module": "^1.0.2" | |
}, | |
"devDependencies": { | |
"babel": "5.8.23" | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment