46 lines
977 B
JavaScript
46 lines
977 B
JavaScript
var transform = require("./transform");
|
|
var fs = require("fs");
|
|
var _ = require("lodash");
|
|
|
|
exports.browserify = require("./browserify");
|
|
exports.middleware = require("./middleware");
|
|
|
|
exports.register = function () {
|
|
require.extensions[".js"] = function (m, filename) {
|
|
m._compile(exports.transformFileSync(filename, {
|
|
sourceMap: true
|
|
}), filename);
|
|
};
|
|
};
|
|
|
|
exports.transform = transform;
|
|
|
|
exports.transformFile = function (filename, opts, callback) {
|
|
if (_.isFunction(opts)) {
|
|
callback = opts;
|
|
opts = {};
|
|
}
|
|
|
|
opts.filename = filename;
|
|
|
|
fs.readFile(filename, function (err, raw) {
|
|
if (err) return callback(err);
|
|
|
|
var code;
|
|
|
|
try {
|
|
code = transform(raw, opts);
|
|
} catch (err) {
|
|
return callback(err);
|
|
}
|
|
|
|
callback(null, code);
|
|
});
|
|
};
|
|
|
|
exports.transformFileSync = function (filename, opts) {
|
|
opts = opts || {};
|
|
opts.filename = filename;
|
|
return transform(fs.readFileSync(filename), opts);
|
|
};
|