HEX
Server: nginx/1.18.0
System: Linux test-ipsremont 5.4.0-214-generic #234-Ubuntu SMP Fri Mar 14 23:50:27 UTC 2025 x86_64
User: ips (1000)
PHP: 8.0.30
Disabled: pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals,pcntl_unshare,
Upload Files
File: /var/www/quadcode-site/node_modules/laravel-mix/src/webpackPlugins/MixDefinitionsPlugin.js
let webpack = require('webpack');
let dotenv = require('dotenv');
let expand = require('dotenv-expand');

/**
 * Create a new plugin instance.
 *
 * @param {string} envPath
 */
function MixDefinitionsPlugin(envPath) {
    expand(
        dotenv.config({
            path: envPath || Mix.paths.root('.env')
        })
    );
}

/**
 * Build up the necessary definitions and add them to the DefinePlugin.
 *
 * @param {Object|null} merge
 */
MixDefinitionsPlugin.build = function(merge = {}) {
    return new webpack.DefinePlugin(
        new MixDefinitionsPlugin().getDefinitions(merge)
    );
};

/**
 * Build all MIX_ definitions for Webpack's DefinePlugin.
 *
 * @param {object} merge
 */
MixDefinitionsPlugin.prototype.getDefinitions = function(merge) {
    let regex = /^MIX_/i;

    // Filter out env vars that don't begin with MIX_.
    let env = Object.keys(process.env)
        .filter(key => regex.test(key))
        .reduce((value, key) => {
            value[key] = process.env[key];

            return value;
        }, {});

    let values = Object.assign(env, merge);

    return (
        Object.keys(values)
            // Stringify all values so they can be fed into Webpack's DefinePlugin.
            .reduce((value, key) => {
                value[`process.env.${key}`] = JSON.stringify(values[key]);

                return value;
            }, {})
    );
};

module.exports = MixDefinitionsPlugin;