diff options
Diffstat (limited to 'lib/rewire.js')
-rw-r--r-- | lib/rewire.js | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/lib/rewire.js b/lib/rewire.js index c52bbeb..1d240d4 100644 --- a/lib/rewire.js +++ b/lib/rewire.js @@ -1,5 +1,6 @@ var Module = require("module"), fs = require("fs"), + path = require("path"), getImportGlobalsSrc = require("./getImportGlobalsSrc.js"), getDefinePropertySrc = require("./getDefinePropertySrc.js"), detectStrictMode = require("./detectStrictMode.js"), @@ -8,11 +9,15 @@ var Module = require("module"), /** * Does actual rewiring the module. For further documentation @see index.js */ -function internalRewire(parentModulePath, targetPath) { +function internalRewire(parentModulePath, targetPath, opts) { var targetModule, prelude, appendix, - src; + src, + isTransform; + + opts = typeof opts === "object" ? opts : {}; + isTransform = !!opts.convertConst; // Checking params if (typeof targetPath !== "string") { @@ -54,7 +59,12 @@ function internalRewire(parentModulePath, targetPath) { } moduleEnv.inject(prelude, appendix); - moduleEnv.load(targetModule); + + if(isTransform) { + moduleEnv.compile(targetModule, src, targetPath); + } else { + moduleEnv.load(targetModule); + } return targetModule.exports; } |