1
0
mirror of https://github.com/chinchang/web-maker.git synced 2025-08-05 21:07:26 +02:00

get preact files into root

This commit is contained in:
Kushagra Gour
2018-06-16 14:56:14 +05:30
parent f5d2b5d1a7
commit dfcd5bc505
57 changed files with 18452 additions and 40 deletions

60
preact.config.js Normal file
View File

@@ -0,0 +1,60 @@
import CopyWebpackPlugin from 'copy-webpack-plugin'
var CommonsChunkPlugin = require('webpack/lib/optimize/CommonsChunkPlugin');
/**
* Function that mutates original webpack config.
* Supports asynchronous changes when promise is returned.
*
* @param {object} config - original webpack config.
* @param {object} env - options passed to CLI.
* @param {WebpackConfigHelpers} helpers - object with useful helpers when working with config.
**/
export default function (config, env, helpers) {
if (env.isProd) {
config.devtool = false; // disable sourcemaps
config.plugins.push(
new CommonsChunkPlugin({
name: 'vendor',
minChunks: ({
resource
}) => /node_modules/.test(resource),
})
);
config.plugins.push(new CopyWebpackPlugin([{
context: `${__dirname}/src/assets`,
from: `*.*`
}, {
from: `${__dirname}/src/lib`,
to: 'lib/'
},
{
from: `${__dirname}/src/detached-window.js`
},
{
from: `${__dirname}/src/*.ttf`
},
{
from: `${__dirname}/src/patreon.png`
},
{
from: `${__dirname}/src/preview.html`
},
{
from: `${__dirname}/src/style.css`
}
]));
const {
plugin
} = helpers.getPluginsByName(config, 'SWPrecacheWebpackPlugin')[0];
plugin.options.maximumFileSizeToCacheInBytes = 2900000;
const {
index
} = helpers.getPluginsByName(config, 'UglifyJsPlugin')[0]
config.plugins.splice(index, 1)
}
}