build-plugin-rax-app
Version:
The basic webpack configuration for rax project
34 lines • 1.66 kB
JavaScript
var path = require('path');
var _a = require('@builder/user-config'), applyCliOption = _a.applyCliOption, applyUserConfig = _a.applyUserConfig;
var customConfigs = require('./config/user.config').default;
var customOptionConfig = require('./config/options.config');
var modifyUserConfig = require('./userConfig/modify').default;
var generateTplFile = require('./generateTplFile');
var registerCustomUserConfig = require('./userConfig/register').default;
var setupLaunch = require('./launch').default;
var setupGlobalValue = require('./global').default;
module.exports = function (api) {
var onGetWebpackConfig = api.onGetWebpackConfig, context = api.context, applyMethod = api.applyMethod, registerUserConfig = api.registerUserConfig;
var rootDir = context.rootDir, userConfig = context.userConfig;
var targets = userConfig.targets;
registerCustomUserConfig(targets, registerUserConfig);
// Modify userConfig
modifyUserConfig(api);
// Register cli option
applyCliOption(api, { customOptionConfig: customOptionConfig });
// Register user config whitch the same as icejs
applyUserConfig(api, { customConfigs: customConfigs });
// Set global value and method
setupGlobalValue(api);
// generate template file
generateTplFile(applyMethod);
// Add staticConfig type
applyMethod('addTypesExport', { source: '../plugins/app/types' });
// set webpack config
onGetWebpackConfig(function (chainConfig) {
// add resolve modules of project node_modules
chainConfig.resolve.modules.add(path.join(rootDir, 'node_modules'));
});
setupLaunch(api);
};
//# sourceMappingURL=index.js.map