Exemplo n.º 1
0
function modularizeFile(file, base, optimize) {
  var r = [];
  var name = fs.relative(base || fs.directory(file), file).replace(/\\/g, '/');
  var extension = fs.extension(file);
  if (extension === '.js') {
    var module = name.substr(0, name.length - extension.length);
    r.push('modules["' + module + '"] = function(require, exports, module) {');
    fs.read(file).split('\n').forEach(function(line) {
      r.push(line && '  ' + line);
    });
    r.push('};\n');
  } else {
    var contents = fs.read(file);
    if (optimize && extension === '.html') {
      contents = optimizeHTML(contents);
    }
    r.push('modules["' + name + '"] = function(require, exports, module) {');
    r.push('  module.exports = ' + JSON.stringify(contents) + ';');
    r.push('};\n');
  }
  return r.join('\n');
}
Exemplo n.º 2
0
var modularize = exports.modularize = function(base, paths, main, optimize) {
  var r = [];
  r.push('modules = self.modules || {};');
  paths.forEach(function(path) {
    if (fs.isFile(path)) {
      r.push(modularizeFile(path, base, optimize));
    } else if (fs.isDirectory(path)) {
      r.push(modularizeDirectory(path, base, optimize));
    }
  });
  if (main) {
    r.push(fs.read(resolve(module, './require.js')) + '("' + removeExtension(main) + '");');
  }
  var result = r.join('\n');
  if (optimize) {
    result = optimizeJS(result);
  }
  return result;
};
Exemplo n.º 3
0
 files.forEach(function(file) {
   r.push(fs.read(file));
 });