UNPKG

1.18 kBJavaScriptView Raw
1/* Import */
2let fs = require('fs');
3let path = require('path');
4let webpack = require('webpack');
5let CopyWebpackPlugin = require('copy-webpack-plugin');
6
7/* Update readme and read license */
8let version = require('./package.json').version;
9let readme = fs.readFileSync('./README.md', 'utf-8').replace(
10 /cdn\/(.*)\/carrot.js/, `cdn/${version}/carrot.js`
11);
12fs.writeFileSync('./README.md', readme);
13
14let license = fs.readFileSync('./LICENSE', 'utf-8');
15
16/* Export config */
17module.exports = {
18 mode: "production",
19 context: __dirname,
20 entry: {
21 'dist/carrot': './src/carrot.js',
22 [`./theme/static/cdn/${version}/carrot`]: './src/carrot.js'
23 },
24 resolve: {
25 modules: [
26 path.join(__dirname, 'node_modules')
27 ]
28 },
29 output: {
30 path: __dirname,
31 filename: '[name].js',
32 library: 'carrot',
33 libraryTarget: 'umd'
34 },
35 plugins: [
36 new webpack.NoEmitOnErrorsPlugin(),
37 new webpack.BannerPlugin(license),
38 new webpack.optimize.ModuleConcatenationPlugin(),
39 new CopyWebpackPlugin([
40 { from: 'src/multithreading/workers/node/worker.js', to: 'dist' }
41 ])
42 ],
43 externals: [
44 'child_process',
45 'os'
46 ],
47 node: {
48 __dirname: false
49 }
50}
\No newline at end of file