<commit_before>const path = require( "path" );
const root = path.resolve( __dirname );
const source = path.join( root, "source" );
const config = require( "./clutch.config" );
const lager = require( "properjs-lager" );
const nodeModules = "node_modules";
const webpack = require( "webpack" );
const BrowserSyncPlugin = require( "browser-sync-webpack-plugin" );



module.exports = ( env ) => {
    return {
        mode: "none",


        devtool: "source-map",


        plugins: [
            new BrowserSyncPlugin({
                open: true,
                host: "localhost",
                port: config.browser.port,
                proxy: `http://localhost:${config.express.port}`,
                files: [
                    "template/**/*.html",
                    "template/**/*.json"
                ]
            })
        ],


        resolve: {
            modules: [root, source, nodeModules],
            mainFields: ["webpack", "browserify", "web", "clutch", "hobo", "main"]
        },


        entry: {
            "app": path.resolve( __dirname, `source/${config.theme}/js/app.js` )
        },


        output: {
            path: path.resolve( __dirname, "static/js" ),
            filename: `app.js`
        },


        module: {
            rules: [
                {
                    test: /source\/.*\.js$/i,
                    exclude: /node_modules/,
                    loader: "eslint-loader",
                    enforce: "pre",
                    options: {
                        emitError: true,
                        emitWarning: false,
                        failOnError: true,
                        quiet: true,
                    },
                },
                {
                    test: /source\/.*\.js$/i,
                    exclude: /node_modules/,
                    use: [
                        {
                            loader: "babel-loader",
                            options: {
                                presets: ["@babel/preset-env"],
                            },
                        },
                    ],
                },
                {
                    test: /(hobo|hobo.build)\.js$/i,<commit_msg>Include properjs in babel transpile :)<commit_after>const path = require( "path" );
const root = path.resolve( __dirname );
const source = path.join( root, "source" );
const config = require( "./clutch.config" );
const lager = require( "properjs-lager" );
const nodeModules = "node_modules";
const webpack = require( "webpack" );
const BrowserSyncPlugin = require( "browser-sync-webpack-plugin" );



module.exports = ( env ) => {
    return {
        mode: "none",


        devtool: "source-map",


        plugins: [
            new BrowserSyncPlugin({
                open: true,
                host: "localhost",
                port: config.browser.port,
                proxy: `http://localhost:${config.express.port}`,
                files: [
                    "template/**/*.html",
                    "template/**/*.json"
                ]
            })
        ],


        resolve: {
            modules: [root, source, nodeModules],
            mainFields: ["webpack", "browserify", "web", "clutch", "hobo", "main"]
        },


        entry: {
            "app": path.resolve( __dirname, `source/${config.theme}/js/app.js` )
        },


        output: {
            path: path.resolve( __dirname, "static/js" ),
            filename: `app.js`
        },


        module: {
            rules: [
                {
                    test: /source\/.*\.js$/i,
                    exclude: /node_modules/,
                    loader: "eslint-loader",
                    enforce: "pre",
                    options: {
                        emitError: true,
                        emitWarning: false,
                        failOnError: true,
                        quiet: true,
                    },
                },
                {
                    // test: /source\/.*\.js$/i,
                    // exclude: /node_modules/,
                    test: /source\/.*\.js$|node_modules\/[properjs-|konami-|paramalama].*/i,
                    use: [
                        {
                            loader: "babel-loader",
                            options: {
                                presets: ["@babel/preset-env"],
                            },
                        },
                    ],
                },
                {
                    test: /(hobo|hobo.build)\.js$/i,
{'fraction_non_alphanumeric': 0.13442044953724108, 'fraction_numerical': 0.0, 'mean_word_length': 0.996042216358839, 'pattern_counts': {'":': 2, '<': 3, '<?xml version=': 0, '>': 5, 'https://': 0, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '2835149', 'n_tokens_mistral': 1221, 'n_tokens_neox': 1108, 'n_words': 222}