79 lines
1.6 KiB
JavaScript
79 lines
1.6 KiB
JavaScript
const HtmlWebpackPlugin = require('html-webpack-plugin');
|
|
const HardSourceWebpackPlugin = require('hard-source-webpack-plugin');
|
|
|
|
module.exports = [
|
|
{
|
|
mode: 'production',
|
|
entry: './src/electron.ts',
|
|
target: 'electron-main',
|
|
module: {
|
|
rules: [{
|
|
test: /\.ts$/,
|
|
include: /src/,
|
|
resolve: {
|
|
extensions: ['.ts', '.js']
|
|
},
|
|
use: [{ loader: 'ts-loader' }]
|
|
}]
|
|
},
|
|
output: {
|
|
devtoolModuleFilenameTemplate: '[absolute-resource-path]',
|
|
path: __dirname + '/dist',
|
|
filename: 'electron.js'
|
|
},
|
|
plugins: [
|
|
new HardSourceWebpackPlugin()
|
|
]
|
|
},
|
|
{
|
|
mode: 'production',
|
|
entry: './src/preload.ts',
|
|
target: 'electron-preload',
|
|
module: {
|
|
rules: [{
|
|
test: /\.ts$/,
|
|
include: /src/,
|
|
resolve: {
|
|
extensions: ['.ts', '.js']
|
|
},
|
|
use: [{ loader: 'ts-loader' }]
|
|
}]
|
|
},
|
|
output: {
|
|
path: __dirname + '/dist',
|
|
filename: 'preload.js'
|
|
},
|
|
plugins: [
|
|
new HardSourceWebpackPlugin()
|
|
]
|
|
},
|
|
{
|
|
mode: 'production',
|
|
entry: './src/index.tsx',
|
|
target: 'web',
|
|
devtool: 'source-map',
|
|
performance: {
|
|
hints: false
|
|
},
|
|
module: {
|
|
rules: [{
|
|
test: /\.ts(x?)$/,
|
|
include: /src/,
|
|
resolve: {
|
|
extensions: ['.ts', '.tsx', '.js']
|
|
},
|
|
use: [{ loader: 'ts-loader' }]
|
|
}]
|
|
},
|
|
output: {
|
|
path: __dirname + '/dist',
|
|
filename: 'index.js'
|
|
},
|
|
plugins: [
|
|
new HardSourceWebpackPlugin(),
|
|
new HtmlWebpackPlugin({
|
|
template: './src/index.html'
|
|
})
|
|
]
|
|
}
|
|
]; |