woocommerce-paypal-payments/modules/ppcp-axo-block/webpack.config.js
Miguel Pérez Pellicer 5cf916667f
Migrate to imports
2025-12-12 23:20:16 +04:00

58 lines
1.4 KiB
JavaScript

const path = require( 'path' );
const isProduction = process.env.NODE_ENV === 'production';
const DependencyExtractionWebpackPlugin = require( '@woocommerce/dependency-extraction-webpack-plugin' );
module.exports = {
resolve: {
alias: {
'@ppcp-axo-block': path.resolve( __dirname, './resources/js' ),
'@ppcp-axo': path.resolve( __dirname, '../ppcp-axo/resources/js' ),
'@ppcp-blocks': path.resolve(
__dirname,
'../ppcp-blocks/resources/js'
),
'@ppcp-button': path.resolve(
__dirname,
'../ppcp-button/resources/js/modules'
),
},
},
devtool: isProduction ? 'source-map' : 'eval-source-map',
mode: isProduction ? 'production' : 'development',
target: 'web',
plugins: [ new DependencyExtractionWebpackPlugin() ],
entry: {
index: path.resolve( './resources/js/index.js' ),
PayPalInsightsLoader: path.resolve(
'./resources/js/plugins/PayPalInsightsLoader.js'
),
gateway: path.resolve( './resources/css/gateway.scss' ),
},
output: {
path: path.resolve( __dirname, 'assets/' ),
filename: 'js/[name].js',
},
module: {
rules: [
{
test: /\.js?$/,
exclude: /node_modules/,
loader: 'babel-loader',
},
{
test: /\.scss$/,
exclude: /node_modules/,
use: [
{
loader: 'file-loader',
options: {
name: 'css/[name].css',
},
},
{ loader: 'sass-loader' },
],
},
],
},
};