UNPKG

webpack-builder-react-xd

Version:

小盾安全前端团队构建器

61 lines (48 loc) 1.24 kB
const fs = require('fs'); const paths = require('./paths'); const chalk = require('chalk'); const { createHash } = require('crypto'); const publicPath = require('./publicPath'); function getAlais() { const folderName = fs.readdirSync(paths.appSrc).filter(v => !v.includes('.')); const alais = { src: paths.appSrc, }; folderName.forEach(name => { alais[name] = paths.appSrc + '/' + name; }); return alais; } function getPublicPath() { const { prodPublicPath, bundle } = getBuilderConfig(); let env = process.env.NODE_ENV; if (process.env.NODE_ENV === 'production') { env = process.env.prod_env; if (prodPublicPath) { return prodPublicPath; } } return publicPath({ env, bundle }); } function getBuilderConfig() { const packages = fs.readFileSync(paths.appPackageJson, 'utf-8'); let res; try { res = JSON.parse(packages)['builder-config']; } catch (error) { console.error(chalk.red(error)); process.exit(1); } return res; } function createEnvironmentHash(env) { const hash = createHash('md5'); hash.update(JSON.stringify(env)); return hash.digest('hex'); } module.exports = { getAlais, getPublicPath, getBuilderConfig, createEnvironmentHash, };