Anomali
Home
Console
Upload
information
Create File
Create Folder
About
Tools
:
/
home
/
u470675869
/
domains
/
catzone.ae
/
public_html
/
wp-content
/
plugins
/
hostinger
/
Filename :
webpack.config.js
back
Copy
const path = require("path"); const CssMinimizerPlugin = require("css-minimizer-webpack-plugin"); const MiniCssExtractPlugin = require("mini-css-extract-plugin"); const TerserPlugin = require("terser-webpack-plugin"); const { VueLoaderPlugin } = require("vue-loader"); const webpack = require("webpack"); module.exports = { entry: `./vue-frontend/src/main.ts`, output: { path: path.resolve(__dirname, "./vue-frontend/dist/"), filename: "[name].js", }, module: { rules: [ { test: /\.vue$/, loader: "vue-loader", options: { compilerOptions: { isCustomElement: (tag) => tag.startsWith("hp-"), }, }, }, { test: /\.ts$/, loader: "ts-loader", options: { appendTsSuffixTo: [/\.vue$/], transpileOnly: true, configFile: path.resolve(__dirname, 'vue-frontend/tsconfig.json') }, exclude: /node_modules/, }, { test: /\.s?[c]ss$/i, use: [MiniCssExtractPlugin.loader, "css-loader", "sass-loader"], }, { test: /\.(jpg|jpeg|png|gif|woff|woff2|eot|ttf|svg)$/i, use: "url-loader?limit=2048", }, ], }, optimization: { minimizer: [ new CssMinimizerPlugin(), new TerserPlugin({ terserOptions: { compress: { drop_console: true, }, }, }), ], }, plugins: [ new VueLoaderPlugin(), new MiniCssExtractPlugin({ filename: "[name].css", }), // new webpack.HotModuleReplacementPlugin(), new webpack.DefinePlugin({ __VUE_OPTIONS_API__: true, __VUE_PROD_DEVTOOLS__: false, __VUE_PROD_HYDRATION_MISMATCH_DETAILS__: false, }), ], resolve: { extensions: [".ts", ".tsx", ".js", ".vue"], alias: { "@": path.resolve(__dirname, "vue-frontend/src/"), "@vue-frontend": path.resolve(__dirname, "vue-frontend/"), }, }, };