strapi/packages/core/admin/utils/get-custom-webpack-config.js
soupette e783e0770a Fix develop mode without TS and refacto strapi-admin file
Signed-off-by: soupette <cyril@strapi.io>
2022-04-04 11:36:52 +02:00

39 lines
1.0 KiB
JavaScript

'use strict';
const path = require('path');
const chalk = require('chalk');
const _ = require('lodash');
const webpack = require('webpack');
const fs = require('fs-extra');
const getWebpackConfig = require('../webpack.config');
const getCustomWebpackConfig = (dir, config) => {
const adminConfigPath = path.join(dir, 'src', 'admin', 'webpack.config.js');
let webpackConfig = getWebpackConfig(config);
if (fs.existsSync(adminConfigPath)) {
const webpackAdminConfig = require(path.resolve(adminConfigPath));
if (_.isFunction(webpackAdminConfig)) {
// Expose the devServer configuration
if (config.devServer) {
webpackConfig.devServer = config.devServer;
}
webpackConfig = webpackAdminConfig(webpackConfig, webpack);
if (!webpackConfig) {
console.error(
`${chalk.red('Error:')} Nothing was returned from your custom webpack configuration`
);
process.exit(1);
}
}
}
return webpackConfig;
};
module.exports = getCustomWebpackConfig;