automerge/automerge-js/examples/webpack/webpack.config.js
2022-09-28 15:59:35 -05:00

36 lines
919 B
JavaScript

const path = require('path');
const nodeExternals = require('webpack-node-externals');
// the most basic webpack config for node or web targets for automerge-wasm
const serverConfig = {
// basic setup for bundling a node package
target: 'node',
externals: [nodeExternals()],
externalsPresets: { node: true },
entry: './src/index.js',
output: {
filename: 'node.js',
path: path.resolve(__dirname, 'dist'),
},
mode: "development", // or production
};
const clientConfig = {
experiments: { asyncWebAssembly: true },
target: 'web',
entry: './src/index.js',
output: {
filename: 'main.js',
path: path.resolve(__dirname, 'public'),
},
mode: "development", // or production
performance: { // we dont want the wasm blob to generate warnings
hints: false,
maxEntrypointSize: 512000,
maxAssetSize: 512000
}
};
module.exports = [serverConfig, clientConfig];