mirror of
https://github.com/qlik-oss/PLSmartPivot.git
synced 2025-12-19 10:17:24 -05:00
75 lines
1.7 KiB
JavaScript
75 lines
1.7 KiB
JavaScript
const StyleLintPlugin = require('stylelint-webpack-plugin');
|
|
const packageJSON = require('./package.json');
|
|
const path = require('path');
|
|
|
|
const DIST = path.resolve("./dist");
|
|
// eslint-disable-next-line no-process-env
|
|
const MODE = process.env.NODE_ENV || 'development';
|
|
const SOURCE_MAP = 'source-map';
|
|
const DEVTOOL = MODE === 'development' ? SOURCE_MAP : false;
|
|
|
|
console.log('Webpack mode:', MODE); // eslint-disable-line no-console
|
|
|
|
const config = {
|
|
devtool: DEVTOOL,
|
|
entry: ["./src/index.js"],
|
|
externals: {
|
|
jquery: {
|
|
amd: "jquery",
|
|
commonjs: "jquery",
|
|
commonjs2: "jquery",
|
|
root: "_",
|
|
},
|
|
qlik: {
|
|
amd: "qlik",
|
|
commonjs: "qlik",
|
|
commonjs2: "qlik",
|
|
root: "_",
|
|
},
|
|
},
|
|
mode: MODE,
|
|
module: {
|
|
rules: [
|
|
{
|
|
enforce: "pre",
|
|
exclude: /(node_modules|Library)/,
|
|
loader: "eslint-loader",
|
|
options: {
|
|
failOnError: true,
|
|
},
|
|
test: /\.(js|jsx)$/,
|
|
},
|
|
{
|
|
exclude: /node_modules/,
|
|
test: /\.(js|jsx)$/,
|
|
use: {
|
|
loader: "babel-loader",
|
|
options: {
|
|
plugins: [
|
|
"@babel/plugin-transform-async-to-generator",
|
|
"@babel/plugin-proposal-class-properties",
|
|
],
|
|
presets: ["@babel/preset-env", "@babel/preset-react"],
|
|
},
|
|
},
|
|
},
|
|
{
|
|
test: /.less$/,
|
|
use: ["style-loader", "css-loader", "less-loader"],
|
|
},
|
|
],
|
|
},
|
|
output: {
|
|
filename: "qlik-smart-pivot.js",
|
|
libraryTarget: "amd",
|
|
path: DIST,
|
|
},
|
|
plugins: [
|
|
new StyleLintPlugin({
|
|
files: "**/*.less",
|
|
}),
|
|
],
|
|
};
|
|
|
|
module.exports = config;
|