{"size": 2011, "ext": "js", "max_stars_repo_path": "src/Apps/BugBashPro/webpack.config.js", "max_stars_repo_name": "mohitbagra/azure-devops-extensions", "max_stars_repo_stars_event_min_datetime": "2019-03-21T21:31:53.000Z", "max_stars_repo_stars_event_max_datetime": "2021-02-25T20:56:25.000Z", "max_issues_repo_path": "src/Apps/BugBashPro/webpack.config.js", "max_issues_repo_name": "mohitbagra/azure-devops-extensions", "max_issues_repo_issues_event_min_datetime": "2019-04-10T08:06:24.000Z", "max_issues_repo_issues_event_max_datetime": "2022-02-25T10:49:15.000Z", "max_forks_repo_path": "src/Apps/BugBashPro/webpack.config.js", "max_forks_repo_name": "mohitbagra/azure-devops-extensions", "max_forks_repo_forks_event_min_datetime": "2019-04-08T14:52:00.000Z", "max_forks_repo_forks_event_max_datetime": "2021-09-10T10:36:14.000Z"}
{"max_stars_count": 10, "max_issues_count": 31, "max_forks_count": 10, "avg_line_length": 34.0847457627, "max_line_length": 151, "alphanum_fraction": 0.4107409249}
const CopyWebpackPlugin = require("copy-webpack-plugin");
const path = require("path");

module.exports = {
    entry: {
        App: "./src/Apps/BugBashPro/scripts/App.tsx"
    },
    resolve: {
        alias: {
            BugBashPro: path.resolve(__dirname, "./scripts")
        }
    },
    optimization: {
        splitChunks: {
            chunks: "all",
            minSize: 0,
            maxInitialRequests: Infinity,
            cacheGroups: {
                default: false,
                vendors: false,
                sdk: {
                    test: /[\\/]node_modules[\\/](azure-devops-extension-sdk)[\\/]/,
                    name: "sdk",
                    chunks: "all",
                    priority: 10
                },
                react: {
                    test: /[\\/]node_modules[\\/](react|react-dom)[\\/]/,
                    name: "react",
                    chunks: "all",
                    priority: 9
                },
                redux: {
                    test: /[\\/]node_modules[\\/](redux|react-redux|redux-saga|reselect|immer|redux-dynamic-modules|redux-dynamic-modules-saga)[\\/]/,
                    name: "redux",
                    chunks: "all",
                    priority: 8
                },
                commons: {
                    name: "commons",
                    chunks: "all",
                    minChunks: 3,
                    priority: 7
                }
            }
        }
    },
    plugins: [
        new CopyWebpackPlugin([
            { from: "./node_modules/es6-promise/dist/es6-promise.min.js", to: "3rdParty/es6-promise.min.js" },

            { from: "./src/Apps/BugBashPro/images", to: "images" },
            { from: "./src/Apps/BugBashPro/html", to: "html" },
            { from: "./src/Apps/BugBashPro/vss-extension.json", to: "vss-extension.json" },
            { from: "./src/Apps/BugBashPro/README.md", to: "README.md" }
        ])
    ]
};
