代码拉取完成,页面将自动刷新
/**
* Forge webpack build rules.
*
* @author Digital Bazaar, Inc.
*
* Copyright 2011-2016 Digital Bazaar, Inc.
*/
const path = require('path');
// build multiple outputs
module.exports = [];
// custom setup for each output
// all built files will export the "forge" library but with different content
const outputs = [
// core forge library crypto and utils
{
entry: ['./lib/index.js'],
filenameBase: 'forge'
},
// core forge library + extra utils and networking support
{
entry: ['./lib/index.all.js'],
filenameBase: 'forge.all'
},
// prime webworker
{
entry: ['./lib/prime.worker.js', './lib/forge.js'],
filenameBase: 'prime.worker',
library: null,
libraryTarget: null
}
// Custom builds can be created by specifying the high level files you need
// webpack will pull in dependencies as needed.
//
// Note: Some modules, such as pbkdf2, may require explicitly listing other
// modules they require, such as sha1 or sha256. This is to allow smaller
// builds when you don't require a default dependency.
//
// Note: If using UMD or similar, add forge.js *last* to properly export
// the top level forge namespace.
//
// Example: sha1 + ...
//{
// entry: ['./lib/sha1.js', ..., './lib/forge.js'],
// filenameBase: 'forge.custom',
// libraryTarget: 'umd'
//}
// Example: PBKDF2 + sha1, explicitly include sha1 default
//{
// entry: ['./lib/pbkdf2.js', './lib/sha1.js', './lib/forge.js'],
// filenameBase: 'forge.pbkdf2-sha1',
// libraryTarget: 'umd'
//}
// Example: PBKDF2 + sha256, without the sha1 default
//{
// entry: ['./lib/pbkdf2.js', './lib/sha256.js', './lib/forge.js'],
// filenameBase: 'forge.pbkdf2-sha256',
// libraryTarget: 'umd'
//}
];
outputs.forEach(info => {
// common to bundle and minified
const common = {
// each output uses the "forge" name but with different contents
entry: {
forge: info.entry
},
// disable various node shims as forge handles this manually
node: {
Buffer: false,
process: false,
crypto: false,
setImmediate: false
}
};
// plain unoptimized unminified bundle
const bundle = Object.assign({}, common, {
mode: 'development',
output: {
path: path.join(__dirname, 'dist'),
filename: info.filenameBase + '.js',
library: info.library || '[name]',
libraryTarget: info.libraryTarget || 'umd'
}
});
if(info.library === null) {
delete bundle.output.library;
}
if(info.libraryTarget === null) {
delete bundle.output.libraryTarget;
}
// optimized and minified bundle
const minify = Object.assign({}, common, {
mode: 'production',
output: {
path: path.join(__dirname, 'dist'),
filename: info.filenameBase + '.min.js',
library: info.library || '[name]',
libraryTarget: info.libraryTarget || 'umd'
},
devtool: 'cheap-module-source-map',
plugins: [
/*
new webpack.optimize.UglifyJsPlugin({
sourceMap: true,
compress: {
warnings: true
},
output: {
comments: false
}
//beautify: true
})
*/
]
});
if(info.library === null) {
delete minify.output.library;
}
if(info.libraryTarget === null) {
delete minify.output.libraryTarget;
}
module.exports.push(bundle);
module.exports.push(minify);
});
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。