plugins_release_vsceiso.js
/**
* @file plugin/release/vsceiso.js
* @copyright @spmhome @_2025
* @author Scott Meesseman @spmeesseman
*//** */
const WpwIsoReleasePlugin = require("./iso");
/**
* @augments WpwIsoReleasePlugin
*/
class WpwVsceIsoPlugin extends WpwIsoReleasePlugin
{
/**
* @param {WpwPluginOptions} options Plugin options to be applied
*/
constructor(options)
{
super({ ...options, isoReleaseType: "vsce" });
this.buildOptions = /** @type {WpwBuildOptionsPluginConfig<"vsceiso">} */(this.buildOptions);
if (!this.build.buildConfigs.find((b) => b.options.npmiso?.enabled === true))
{
if (!this.buildOptions.removeProperties) {
this.buildOptions.removeProperties = [ "publishConfig" ];
}
else {
this.buildOptions.removeProperties.push("publishConfig");
}
}
}
/**
* @override
*/
static create = WpwVsceIsoPlugin.wrap.bind(this);
}
module.exports = WpwVsceIsoPlugin.create;