Merge branch 'sourcemap-windows'

v1.18.x
Julian Lam 11 years ago
commit 440a19ed57

@ -24,7 +24,7 @@ Minifier.js.minify = function (scripts, minify, callback) {
options.outSourceMap = 'nodebb.min.js.map'; options.outSourceMap = 'nodebb.min.js.map';
options.mangle = false; options.mangle = false;
options.compress = false; options.compress = false;
options.prefix = __dirname.split(path.sep).length; options.prefix = 1;
} }
try { try {

@ -5,6 +5,7 @@ var winston = require('winston'),
path = require('path'), path = require('path'),
async = require('async'), async = require('async'),
_ = require('underscore'), _ = require('underscore'),
os = require('os'),
plugins = require('../plugins'), plugins = require('../plugins'),
emitter = require('../emitter'), emitter = require('../emitter'),
@ -74,30 +75,30 @@ module.exports = function(Meta) {
Meta.js.prepare = function (callback) { Meta.js.prepare = function (callback) {
plugins.fireHook('filter:scripts.get', Meta.js.scripts, function(err, scripts) { plugins.fireHook('filter:scripts.get', Meta.js.scripts, function(err, scripts) {
var jsPaths = scripts.map(function (jsPath) { var jsPaths = scripts.map(function (jsPath) {
jsPath = path.normalize(jsPath); jsPath = path.normalize(jsPath);
if (jsPath.substring(0, 7) === 'plugins') { if (jsPath.substring(0, 7) === 'plugins') {
var matches = _.map(plugins.staticDirs, function(realPath, mappedPath) { var matches = _.map(plugins.staticDirs, function(realPath, mappedPath) {
if (jsPath.match(mappedPath)) { if (jsPath.match(mappedPath)) {
return mappedPath; return mappedPath;
} else {
return null;
}
}).filter(function(a) { return a; });
if (matches.length) {
var relPath = jsPath.slice(('plugins/' + matches[0]).length),
pluginId = matches[0].split(path.sep)[0];
return plugins.staticDirs[matches[0]] + relPath;
} else { } else {
winston.warn('[meta.scripts.get] Could not resolve mapped path: ' + jsPath + '. Are you sure it is defined by a plugin?');
return null; return null;
} }
}).filter(function(a) { return a; });
if (matches.length) {
var relPath = jsPath.slice(('plugins/' + matches[0]).length),
pluginId = matches[0].split(path.sep)[0];
return plugins.staticDirs[matches[0]] + relPath;
} else { } else {
winston.warn('[meta.scripts.get] Could not resolve mapped path: ' + jsPath + '. Are you sure it is defined by a plugin?'); return path.join(__dirname, '../..', '/public', jsPath);
return null;
} }
} else { });
return path.join(__dirname, '../..', '/public', jsPath);
}
});
Meta.js.scripts = jsPaths.filter(function(path) { Meta.js.scripts = jsPaths.filter(function(path) {
return path !== null; return path !== null;
@ -123,6 +124,11 @@ module.exports = function(Meta) {
next(err); next(err);
}); });
}, function(err) { }, function(err) {
// Translate into relative paths
Meta.js.scripts = Meta.js.scripts.map(function(script) {
return path.relative(path.resolve(__dirname, '../..'), script).replace(/\\/g, '/');
});
Meta.js.prepared = true; Meta.js.prepared = true;
callback(err); callback(err);
}); });
@ -163,4 +169,11 @@ module.exports = function(Meta) {
Meta.js.minifierProc.kill('SIGTERM'); Meta.js.minifierProc.kill('SIGTERM');
} }
}; };
// OS detection and handling
// if (os.platform() === 'win32') {
// Meta.js.scripts = Meta.js.scripts.map(function(script) {
// return script.replace(/\//g, '\\');
// });
// }
}; };
Loading…
Cancel
Save