-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathindex.js
27 lines (24 loc) · 908 Bytes
/
index.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
var transformTools = require('browserify-transform-tools');
var resolve = require('resolve');
var path = require('path')
var transform = transformTools.makeRequireTransform(
"resolvify",
{
evaluateArguments: true,
jsFilesOnly: true
},
function(args, opts, cb) {
var paths = Object.keys(opts.config)
.filter(function(opts_key) { return opts_key.length == 1 })
.reduce(function(coll, opts_key) {
return coll.concat(opts.config[opts_key])
},[])
if (paths.length == 0) { return cb(null) }
resolved = resolve.sync(args[0], {
basedir: path.dirname(opts.file),
moduleDirectory: ['node_modules'].concat(paths)
});
return cb(null, "require('"+resolved.replace(/\\/g,'\\\\')+"')");
}
);
module.exports = transform;