UNPKG

react-material-dashboard

Version:
40 lines (33 loc) 1.02 kB
'use strict'; const path = require('path'); const args = require('minimist')(process.argv.slice(2)); // List of allowed environments const allowedEnvs = ['dev', 'dist', 'test']; // Set the correct environment var env; if(args._.length > 0 && args._.indexOf('start') !== -1) { env = 'test'; } else if (args.env) { env = args.env; } else { env = 'dev'; } process.env.REACT_WEBPACK_ENV = env; // Get available configurations const configs = { base: require(path.join(__dirname, 'cfg/base')), dev: require(path.join(__dirname, 'cfg/dev')), dist: require(path.join(__dirname, 'cfg/dist')), test: require(path.join(__dirname, 'cfg/test')) }; /** * Build the webpack configuration * @param {String} wantedEnv The wanted environment * @return {Object} Webpack config */ function buildConfig(wantedEnv) { let isValid = wantedEnv && wantedEnv.length > 0 && allowedEnvs.indexOf(wantedEnv) !== -1; let validEnv = isValid ? wantedEnv : 'dev'; return configs[validEnv]; } module.exports = buildConfig(env);