-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy pathwebpack.config.js
53 lines (51 loc) · 1.21 KB
/
webpack.config.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
const { resolve, join } = require('path')
const webpack = require('webpack')
const paths = {
dist: resolve(__dirname, 'dist'),
src: resolve(__dirname, 'lib'),
}
module.exports = [
{
mode: 'production',
entry: join(paths.src, 'index.js'),
target: 'web',
output: {
path: paths.dist,
filename: 'lona-serialization.umd.js',
library: {
root: 'lonaSerialization',
amd: 'lona-serialization',
commonjs: 'lona-serialization',
},
libraryTarget: 'umd',
},
plugins: [
new webpack.DefinePlugin({
'process.env.NODE_ENV': JSON.stringify('production'),
}),
],
node: {
fs: 'empty',
},
resolve: {
extensions: ['.js', '.json'],
alias: {
'./grammar/logicParser': resolve(
paths.src,
'formats/source/grammar/logic.swift.pegjs'
),
},
},
module: {
rules: [
{
test: /\.pegjs$/,
use: {
loader:
'pegjs-loader?allowedStartRules[]=topLevelDeclarations&allowedStartRules[]=program&allowedStartRules[]=statement&allowedStartRules[]=declaration&allowedStartRules[]=expression',
},
},
],
},
},
]