diff options
author | Joas Schilling <coding@schilljs.com> | 2020-09-09 17:37:01 +0300 |
---|---|---|
committer | Joas Schilling <coding@schilljs.com> | 2020-09-10 10:41:33 +0300 |
commit | 095c376166604fdc9a99db1083a3fa421810f0cd (patch) | |
tree | 015a1cbaeff71b3e90c85f0e736af096cc903f79 /webpack.js | |
parent | 5024328a13a11a6d751888ab24f33a14c663777d (diff) |
"App tutorial"ize this app
Signed-off-by: Joas Schilling <coding@schilljs.com>
Diffstat (limited to 'webpack.js')
-rw-r--r-- | webpack.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/webpack.js b/webpack.js new file mode 100644 index 0000000..52dfe26 --- /dev/null +++ b/webpack.js @@ -0,0 +1,35 @@ +const { merge } = require('webpack-merge') +const webpackConfig = require('@nextcloud/webpack-vue-config') +const BabelLoaderExcludeNodeModulesExcept = require('babel-loader-exclude-node-modules-except') + +const config = { + module: { + rules: [ + { + test: /\.vue$/, + loader: 'vue-loader', + exclude: BabelLoaderExcludeNodeModulesExcept([ + '@juliushaertl/vue-richtext', + 'vue-material-design-icons', + ]), + }, + { + test: /\.js$/, + loader: 'babel-loader', + exclude: BabelLoaderExcludeNodeModulesExcept([ + '@juliushaertl/vue-richtext', + '@nextcloud/event-bus', + 'semver', + ]), + }, + ], + }, +} + +const mergedConfigs = merge(config, webpackConfig) + +// Remove duplicate rules by the `test` key +mergedConfigs.module.rules = mergedConfigs.module.rules.filter((v, i, a) => a.findIndex(t => (t.test.toString() === v.test.toString())) === i) + +// Merge rules by replacing existing tests +module.exports = mergedConfigs |