mirror of
https://github.com/qlik-oss/PLSmartPivot.git
synced 2025-12-19 18:27:32 -05:00
78 lines
1.7 KiB
JavaScript
78 lines
1.7 KiB
JavaScript
const CopyWebpackPlugin = require('copy-webpack-plugin');
|
|
const StyleLintPlugin = require('stylelint-webpack-plugin');
|
|
const settings = require('./settings');
|
|
|
|
console.log('Webpack mode:', settings.mode); // eslint-disable-line no-console
|
|
|
|
const config = {
|
|
devtool: 'source-map',
|
|
entry: [
|
|
'./src/index.js'
|
|
],
|
|
mode: settings.mode,
|
|
output: {
|
|
path: settings.buildDestination,
|
|
filename: settings.name + '.js',
|
|
libraryTarget: 'amd'
|
|
},
|
|
externals: {
|
|
jquery: {
|
|
amd: 'jquery',
|
|
commonjs: 'jquery',
|
|
commonjs2: 'jquery',
|
|
root: '_'
|
|
},
|
|
},
|
|
// TODO: breaks core-js for some reason
|
|
// resolve: {
|
|
// extensions: ['js', 'jsx']
|
|
// },
|
|
module: {
|
|
rules: [
|
|
{
|
|
enforce: 'pre',
|
|
test: /\.(js|jsx)$/,
|
|
exclude: /(node_modules|Library)/,
|
|
loader: 'eslint-loader',
|
|
options: {
|
|
failOnError: true
|
|
}
|
|
},
|
|
{
|
|
test: /\.(js|jsx)$/,
|
|
exclude: /node_modules/,
|
|
use: {
|
|
loader: 'babel-loader',
|
|
options: {
|
|
plugins: ['@babel/plugin-transform-async-to-generator'],
|
|
presets: [
|
|
'@babel/preset-env',
|
|
'@babel/preset-react'
|
|
]
|
|
}
|
|
}
|
|
},
|
|
{
|
|
test: /.less$/,
|
|
use: ['style-loader', 'css-loader', 'less-loader']
|
|
}
|
|
]
|
|
},
|
|
plugins: [
|
|
new CopyWebpackPlugin([
|
|
'assets/' + settings.name + '.qext',
|
|
'assets/' + settings.name + '.png',
|
|
'assets/wbfolder.wbl',
|
|
|
|
// TODO: remove entries below this line
|
|
'resources/Accounts.csv',
|
|
'resources/Accounts2.csv',
|
|
'resources/QlikLook.csv',
|
|
'resources/Excel.png',
|
|
], {}),
|
|
new StyleLintPlugin()
|
|
]
|
|
};
|
|
|
|
module.exports = config;
|