blob: 0afa4d5ba6b328edbf597a2cdfb3d567ecfe06ec [file] [log] [blame]
zorkowc1850b82021-05-10 21:57:37 +01001const path = require('path');
2const TerserPlugin = require('terser-webpack-plugin');
3
4let config = {
5 module: {
6 rules: [
7 {
8 test: /\.tsx?$/,
9 use: 'ts-loader',
10 exclude: /node_modules|src/,
11 }
12 ],
13 },
14 resolve: {
15 extensions: [ '.tsx', '.ts', '.js' ],
16 },
17 node: {
18 __dirname: false
19 },
zorkowc1850b82021-05-10 21:57:37 +010020 optimization: {
21 minimize: true,
22 minimizer: [new TerserPlugin({
23 terserOptions: {
24 output: {
25 ascii_only: true
26 }
27 }
28 })]
29 },
30 mode: 'production'
31};
32
33let sreConfig = Object.assign({}, config, {
34 entry: path.resolve(__dirname, 'ts/index.ts'),
35 // devtool: false,
36 // target: 'web',
37 output: {
38 filename: 'sre.js',
39 library: 'SRE',
40 libraryTarget: 'umd',
41 globalObject: 'this',
42 path: path.join(__dirname, 'lib'),
43 }
44});
45
zorkowfb546952021-05-19 11:53:22 +010046let mjConfig = Object.assign({}, config, {
47 entry: path.resolve(__dirname, 'ts/common/mathjax.ts'),
48 // devtool: false,
49 target: 'web',
50 output: {
51 filename: 'mathjax-sre.js',
52 library: 'MJ',
53 libraryTarget: 'umd',
54 globalObject: 'this',
55 path: path.join(__dirname, 'lib'),
56 }
57});
58
zorkowc1850b82021-05-10 21:57:37 +010059module.exports = [sreConfig];