@cocreate/aria
Version:
Chain multiple component executions to generate your desired logic, when one action is complete next one will start. The sequence goes until all aria have been completed. Vanilla javascript, easily configured using HTML5 attributes and/or JavaScript API.
66 lines (64 loc) • 1.44 kB
JavaScript
const path = require("path");
const MiniCssExtractPlugin = require("mini-css-extract-plugin");
const { EsbuildPlugin } = require("esbuild-loader");
const { FileUploader } = require("@cocreate/webpack");
module.exports = async (env, argv) => {
const isProduction = argv && argv.mode === "production";
const config = {
entry: {
"CoCreate-aria": "./src/index.js"
},
output: {
path: path.resolve(__dirname, "dist"),
filename: isProduction ? "[name].min.js" : "[name].js",
libraryExport: "default",
library: ["CoCreate", "aria"],
clean: true
},
plugins: [
new MiniCssExtractPlugin({
filename: isProduction ? "[name].min.css" : "[name].css"
}),
new FileUploader(env, argv)
],
mode: isProduction ? "production" : "development",
devtool: isProduction ? "source-map" : "eval-source-map",
module: {
rules: [
{
test: /.js$/,
exclude: /node_modules/,
use: {
loader: "esbuild-loader",
options: {
loader: "js",
target: "es2017"
}
}
},
{
test: /.css$/i,
use: [MiniCssExtractPlugin.loader, "css-loader"]
}
]
},
optimization: {
minimize: isProduction,
minimizer: [
new EsbuildPlugin({
target: "es2017",
css: true
})
],
splitChunks: {
cacheGroups: {
defaultVendors: false
}
}
},
performance: {
hints: isProduction ? "warning" : false
}
};
return config;
};