const path = require("path");
const name = "wanda-adm";
const devServerPort = 28888;
const stageServerPort = 28889;
module.exports = {
    // TODO: 更改 publicPath 打包静态文件目录的配置
    publicPath: process.env.NODE_ENV === "production" ? "/" : "/",
    // TODO:打包名称
    outputDir: "wanda-adm",
    //TODO: eslint 是否在保存时检查
    lintOnSave: process.env.NODE_ENV === "development",
    productionSourceMap: false,
    devServer: {
        port: devServerPort,
        open: true,
        overlay: {
            warning: false,
            errors: true
        },
        progress: false,
        proxy: {
            [process.env.VUE_APP_BASE_API]: {
                target: `http://127.0.0.1:${stageServerPort}/mock-api/v1`,
                changeOrigin: true, // needed for virtual hosted sites
                ws: true, // proxy websockets
                pathRewrite: {
                    ["^" + process.env.VUE_APP_BASE_API]: ""
                }
            },
            "/datacenter": {
                target: "http://192.168.64.17:28890",
                changeOrigin: true
            },
            "/equip-component": {
                target: "http://192.168.64.17:28890",
                changeOrigin: true
            },
            "/schedulerapi": {
                target: "http://192.168.64.17:28890",
                changeOrigin: true,
                pathRewrite: {
                    "^/schedulerapi": "/scheduler"
                }
            },
            "/modelapi": {
                target: "http://192.168.64.17:28890",
                changeOrigin: true,
                pathRewrite: {
                    "^/modelapi": "/revit-algorithm"
                }
            },
            // "/modelapi": {
            //     target: "http://192.168.0.55:8080",
            //     changeOrigin: true,
            //     pathRewrite: {
            //         "^/modelapi": "/"
            //     }
            // },
            "/message-center": {
                target: "http://192.168.64.17:28890",
                changeOrigin: true
            },
            "/rwd": {
                target: "http://39.102.40.239:9970",
                changeOrigin: true
            },
            "/image-service": {
                target: "http://39.97.179.199:8891",
                changeOrigin: true
            }
        }
    },
    //配置插件
    pluginOptions: {
        "style-resources-loader": {
            preProcessor: "scss",
            patterns: [
                path.resolve(__dirname, "src/styles/_variables.scss"),
                path.resolve(__dirname, "src/styles/_mixins.scss")
            ]
        }
    },
    // 高级配置
    chainWebpack(config) {
        //在html网页包插件的选项列表中提供应用程序的标题,以便
        //可以在中访问索引.html插入正确的标题。
        // https://cli.vuejs.org/guide/webpack.html#modifying-options-of-a-plugin
        config.plugin("html").tap(args => {
            args[0].title = name;
            return args;
        });
    }
};