You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
session-desktop/webpack.config.js.back

154 lines
3.3 KiB
Plaintext

/* eslint-disable class-methods-use-this */
/*const path = require('path');
const HtmlWebpackPlugin = require('html-webpack-plugin');
const optimization = {
nodeEnv: false,
removeAvailableModules: true,
removeEmptyChunks: true,
providedExports: true,
minimize: false,
// minimizer: [new TerserPlugin({ parallel: true })],
// splitChunks: true,
};
const EXTERNAL_MODULE = new Set([
'backbone',
'better-sqlite3',
'fsevents',
'got',
'jquery',
'node-fetch',
]);
module.exports = [
{
// bundling mode
mode: 'development', // mode: 'production',
devtool: false,
optimization,
// entry files
resolve: {
extensions: ['.ts', '.tsx', '.js', '.json'],
},
entry: './ts/mains/main_node.ts',
target: 'electron-main',
module: {
// loaders
rules: [
{
test: /\.js$/,
loader: `node-bindings-loader`,
},
{
test: /\.node$/,
loader: `node-loader`,
},
{
test: /\.tsx?$/,
include: /ts/,
use: [
{
loader: 'ts-loader',
options: {
transpileOnly: true,
experimentalWatchApi: true,
},
},
],
exclude: /node_modules/,
},
],
},
// output bundles (location)
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'electron_main.js',
},
},
// {
// entry: './preload.ts',
// mode: 'development',
// output: {
// path: path.resolve(__dirname, 'dist'),
// filename: 'preload.bundled.js',
// },
// target: 'electron-main',
// resolve: {
// extensions: ['.ts', '.tsx', '.js', '.json'],
// mainFields: ['browser', 'main'],
// },
// externals: [
// ({ request = '' }, callback) => {
// if (EXTERNAL_MODULE.has(request)) {
// return callback(undefined, `commonjs2 ${request}`);
// }
// callback();
// },
// ],
// module: {
// rules: [
// {
// test: /\.tsx?$/,
// include: [path.resolve(__dirname), path.resolve(__dirname, 'js')],
// exclude: /node_modules/,
// use: [
// {
// loader: 'ts-loader',
// options: { transpileOnly: true },
// },
// ],
// },
// ],
// },
// },
// {
// mode: 'development',
// entry: './ts/mains/main_renderer.ts',
// target: 'electron-renderer',
// devtool: false,
// resolve: {
// extensions: ['.ts', '.tsx', '.js', '.json'],
// },
// module: {
// rules: [
// {
// test: /\.tsx?$/,
// include: [path.resolve(__dirname, 'ts'), path.resolve(__dirname, 'js')],
// exclude: /node_modules/,
// use: [
// {
// loader: 'ts-loader',
// options: {
// transpileOnly: true,
// experimentalWatchApi: true,
// },
// },
// ],
// },
// ],
// },
// optimization,
// output: {
// path: path.resolve(__dirname, 'dist', 'js'),
// filename: 'electron_renderer.js',
// },
// plugins: [
// new HtmlWebpackPlugin({
// template: './background.html',
// }),
// ],
// },
];