2
0
mirror of https://github.com/frappe/books.git synced 2024-12-24 11:55:46 +00:00
books/vue.config.js
2022-01-21 15:20:52 +05:30

58 lines
1.5 KiB
JavaScript

const path = require('path');
const webpack = require('webpack');
module.exports = {
pluginOptions: {
electronBuilder: {
nodeIntegration: true,
chainWebpackRendererProcess: (config) => {
config.target('electron-renderer');
config.resolve.alias.set('frappe', path.resolve(__dirname, './frappe'));
},
chainWebpackMainProcess: (config) => {
config.target('electron-main');
config.resolve.alias.set('frappe', path.resolve(__dirname, './frappe'));
config.module
.rule('js')
.test(/\.js$/)
.use('babel')
.loader('babel-loader');
},
},
},
pages: {
index: {
entry: 'src/main.js',
filename: 'index.html',
},
print: {
entry: 'src/print.js',
filename: 'print.html',
},
},
runtimeCompiler: true,
lintOnSave: process.env.NODE_ENV !== 'production',
configureWebpack(config) {
Object.assign(config.resolve.alias, {
frappe: path.resolve(__dirname, './frappe'),
'frappe-charts$': 'frappe-charts/dist/frappe-charts.esm.js',
'~': path.resolve('.'),
});
config.plugins.push(
// https://github.com/knex/knex/issues/1446#issuecomment-537715431
new webpack.ContextReplacementPlugin(
/knex[/\\]lib[/\\]dialects/,
/sqlite3[/\\]index.js/
)
);
config.module.rules.push({
test: /\.txt$/i,
use: 'raw-loader',
});
config.devtool = 'source-map';
},
};