/**
 * webpack 打包配置文件
 * @author ilex
 */
const { tools } = require('ray-plugins');
const simpleConfig = require('amos-build/lib/simpleConfig');

const __ENV__ = tools.trim(process.env.NODE_ENV);

const isProd = __ENV__ === 'production';

// ------------------------------------------------------
// 添加webpack加载别名,用于导包重定向，优化打包以及代码
// 此处需要自己进行定义
// 👻可修改
// ------------------------------------------------------
const alias = {
  MODEL: __dirname + '/src/model',
  UTILS: __dirname + '/src/utils',
  CONSTS: __dirname + '/src/consts',
  _MOCK: __dirname + '/src/_mock'
};

// ------------------------------------
// 入口点
// ------------------------------------
// 发布模式入口
const prodEntry = {
  app: './src/entry/index.prod.js'
};

// 开发模式入口
const devEntry = {
  app: './src/entry/index.js'
};

const config = {
  tpl: './tpl.html',
  toFile: 'index.html',
  port: 3003,
  favicon: 'favicon.ico',
  useHot: isProd ? false : true,
  alias,
  entry: isProd ? prodEntry : devEntry,
  sourceMap: isProd ? false : true
};

const defaultConfig = simpleConfig(config);

defaultConfig.name = 'amos-init';

module.exports = defaultConfig;
