core_script.js

/**
 * @file core/script.js
 * @copyright @spmhome @_2025
 * @author Scott Meesseman @spmeesseman
 *
 * @description
 *
 * External script wrapper
 *//** */


class WpwExternalScriptService
{
    /**
     * @type {Array<Error|SpmhError>}
     */
    errors = [];
    // /**
    //  * @override
    //  * @type {WpwModuleType}
    //  */
    // type = "script";
    // /**
    //  * @override
    //  * @type {WpwModuleSubType}
    //  */
    // subtype = "scriptservice";
    /**
     * @type {string}
     */
    scriptName;


    /**
     * @param {any} options
     */
	constructor(options)
    {
        this.scriptName = options.name;
    }


	// /**
	//  * @param {string} [message]
	//  * @param {SpmhErrorCode | null} [code]
	//  * @param {SpmhError | WebpackError | Error | undefined} [exception]
    //  * @returns {SpmhMessageInfo}
	//  */
	// getErrorMessageDefaultCfg(message, code, exception)
    // {
    //     return apply(super.getErrorDefaultCfg(message, code, exception), { code: SpmhMessage.Code.ERROR_SCRIPT_FAILED });
    // }
//
//
    // /**
    //  * @returns {string[]} args
    //  */
    // static cliWrap()
    // {
    //     return process.argv.slice().splice(2);
    // }
//
    // /**
    //  * May be implemented by extending WpwPlugin if internal hooks are to be set up.
    //  * All plugins either (1) have internal hooks, (2) wrap a vendor plugin, or (3) both.
    //  *
    //  * @virtual
    //  * @protected
    //  * @template T
    //  * @template R
    //  * @param {WebpackCompiler} _compiler
    //  * @returns {WpwPluginTapOptions<T, R> | undefined | void}
    //  */
    // run(_compiler)
    // {
    //     throw this.addMessage({ code: SpmhMessage.Code.WARNING_ABSTRACT_FUNCTION, message: `[script:: ${this.name}]` });
    // }

}


module.exports = WpwExternalScriptService;