UNPKG

lilacs

Version:

A web frontend building tool for teamwork, with automaticly compiling, merging, minifying, syncing files to server, supporting distributed servers, ensuring css or html files' inline reference with correct absolute path, and more.

37 lines (28 loc) 1.26 kB
var _ = require('lodash'); var cheerio = require('cheerio'); var fs = require('fs'); var getAllRequireJsModules = require('../../util/get_all_require_js_modules'); var getRequireJsModulesPaths = require('../../util/get_require_js_modules_paths'); /** * find js modules, if not found in project, copy from node_modules * @param config */ module.exports = (config) => { // if is multi modules, no more handling if (!config.useRequireJs || config.multiModules) return; var htmlPath = config.buildPaths.copiedDev.html + '/' + config.module + '.html'; if (!fs.existsSync(htmlPath)) return; // make $ var $ = cheerio.load(fs.readFileSync(htmlPath), {decodeEntities: !1}); // get all modules, include dependencies config.requireJsAllModules = getAllRequireJsModules(config); // get all modules paths config.requireJsAllModulesPaths = getRequireJsModulesPaths(config.requireJsAllModules, config.requireJsConfig, config); if (config.hasExtraJsEntryModules) { config.extraRequireJsAllModules = []; // guarantee all modules are available config.extraJsEntryModules.forEach(module => { config.extraRequireJsAllModules.push(getAllRequireJsModules(config, module)); }); } };