HEX
Server: Apache/2.4.6 (CentOS) OpenSSL/1.0.2k-fips PHP/7.4.33
System: Linux li317-225.members.linode.com 3.10.0-1062.12.1.el7.x86_64 #1 SMP Tue Feb 4 23:02:59 UTC 2020 x86_64
User: apache (48)
PHP: 7.4.33
Disabled: NONE
Upload Files
File: /var/www/farmoskosmicfarms_backup/node_modules/laravel-mix/src/components/FunctionalComponent.js
/** @typedef {import('../../types/component').ClassComponent} ClassComponent */
/** @typedef {import('../../types/component').FunctionalComponent} FunctionalComponent */

/**
 * @param {string[]} names
 * @param {FunctionalComponent} component
 * @returns {ClassComponent}
 */
exports.createFunctionalComponent = function createFunctionalComponent(names, component) {
    return class {
        /** @type {any[]} */
        args = [];

        name() {
            return names;
        }

        /**
         *
         * @param  {...any} args
         */
        register(...args) {
            this.args = args;
        }

        /**
         *
         * @param {import('webpack').Configuration} config
         */
        webpackConfig(config) {
            component.call(this, config, ...this.args);
        }
    };
};