You're Invited:Meet the Socket Team at BlackHat and DEF CON in Las Vegas, Aug 4-6.RSVP
Socket
Book a DemoInstallSign in
Socket

cartridge-resolver-plugin

Package Overview
Dependencies
Maintainers
1
Versions
7
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

cartridge-resolver-plugin - npm Package Compare versions

Comparing version

to
2.0.2

LICENSE

20

package.json
{
"name": "cartridge-resolver-plugin",
"version": "2.0.1",
"version": "2.0.2",
"description": "Webpack Plugin: Provide the cartridge inheritance behavior same as Demandware server side scripts.",
"keywords": [
"webpack",
"cartridge",
"compile",
"demandware",
"salesforce",
"demandware",
"cartridge",
"compile"
"sfcc",
"sfra",
"webpack"
],

@@ -20,2 +22,6 @@ "author": "Vinh Trinh <vinhtrinh.live@gmail.com>",

],
"repository": {
"type": "git",
"url": "https://github.com/vinhtrinh/cartridge-resolver-plugin"
},
"license": "MIT",

@@ -31,4 +37,6 @@ "main": "src/index.js",

"test": "./node_modules/.bin/nyc mocha",
"coverage": "./node_modules/.bin/nyc report --reporter=lcovonly"
"coverage": "./node_modules/.bin/nyc report --reporter=lcovonly",
"sonar": "sonar-scanner",
"sonar:win": "sonar-scanner.bat"
}
}

@@ -14,6 +14,6 @@ <div align="center">

![](https://sonarcloud.io/api/project_badges/measure?project=vinhtrinh_cartridge-resolver-plugin&metric=alert_status)
![](https://sonarcloud.io/api/project_badges/measure?project=vinhtrinh_cartridge-resolver-plugin&metric=sqale_rating)
![](https://sonarcloud.io/api/project_badges/measure?project=vinhtrinh_cartridge-resolver-plugin&metric=reliability_rating)
![](https://sonarcloud.io/api/project_badges/measure?project=vinhtrinh_cartridge-resolver-plugin&metric=coverage)
[![](https://sonarcloud.io/api/project_badges/measure?project=vinhtrinh_cartridge-resolver-plugin&metric=alert_status)](https://sonarcloud.io/dashboard?id=vinhtrinh_cartridge-resolver-plugin)
[![](https://sonarcloud.io/api/project_badges/measure?project=vinhtrinh_cartridge-resolver-plugin&metric=sqale_rating)](https://sonarcloud.io/dashboard?id=vinhtrinh_cartridge-resolver-plugin)
[![](https://sonarcloud.io/api/project_badges/measure?project=vinhtrinh_cartridge-resolver-plugin&metric=reliability_rating)](https://sonarcloud.io/dashboard?id=vinhtrinh_cartridge-resolver-plugin)
[![](https://sonarcloud.io/api/project_badges/measure?project=vinhtrinh_cartridge-resolver-plugin&metric=coverage)](https://sonarcloud.io/dashboard?id=vinhtrinh_cartridge-resolver-plugin)

@@ -20,0 +20,0 @@ #

@@ -61,52 +61,58 @@ const fs = require('fs');

if (!currentCartridge) {
return callback();
}
if (currentCartridge) {
const flag = requestContext.request[0];
const currentCartridgeIndex = this.cartridgeNames.indexOf(currentCartridge);
const flag = requestContext.request[0];
const currentCartridgeIndex = this.cartridgeNames.indexOf(currentCartridge);
let lookupCartrdiges;
let relativeRequest = requestContext.request.replace(this.aliasRegexp, () => '');
let lookupCartrdiges;
let relativeRequest = requestContext.request.replace(this.aliasRegexp, () => '');
if (['*', '^', '~'].includes(flag)) {
relativeRequest = relativeRequest.replace(/^(\*|\^|~)(\\|\/|:)?/, '');
if (['*', '^', '~'].includes(flag)) {
relativeRequest = relativeRequest.replace(/^(\*|\^|~)(\\|\/|:)?/, '');
if (!relativeRequest) {
relativeRequest = this.getRelativeAsset(requestContext.context.issuer);
}
if (!relativeRequest) {
relativeRequest = this.getRelativeAsset(requestContext.context.issuer);
}
switch (flag) {
case '*':
lookupCartrdiges = this.cartridgeNames;
break;
switch (flag) {
case '*': lookupCartrdiges = this.cartridgeNames; break;
case '^': lookupCartrdiges = this.cartridgeNames.slice(currentCartridgeIndex + 1); break;
case '~': lookupCartrdiges = [currentCartridge]; break;
}
} else if (this.isAliasRequest(requestContext.request)) {
const relativeIssuer = this.getRelativeAsset(requestContext.context.issuer);
lookupCartrdiges = relativeRequest === relativeIssuer ? this.cartridgeNames.slice(currentCartridgeIndex + 1) : this.cartridgeNames;
} else if (this.isAbsoluteCartridge(requestContext.request)) {
const cartridgeName = requestContext.request.match(this.absoluteRegexp)[1];
relativeRequest = relativeRequest.replace(this.absoluteRegexp, '');
lookupCartrdiges = [this.cartridges[cartridgeName] ? cartridgeName : this.aliases[cartridgeName]];
} else if (!path.isAbsolute(requestContext.request)) {
if ('.' === requestContext.request) {
relativeRequest = this.getRelativeAsset(requestContext.context.issuer);
lookupCartrdiges = this.cartridgeNames.slice(currentCartridgeIndex + 1);
} else {
case '^':
lookupCartrdiges = this.cartridgeNames.slice(currentCartridgeIndex + 1);
break;
case '~':
lookupCartrdiges = [currentCartridge];
break;
}
} else if (this.isAliasRequest(requestContext.request)) {
const relativeIssuer = this.getRelativeAsset(requestContext.context.issuer);
relativeRequest = this.getRelativeAsset(path.resolve(requestContext.path, requestContext.request));
lookupCartrdiges = relativeRequest === relativeIssuer ? this.cartridgeNames.slice(currentCartridgeIndex + 1) : this.cartridgeNames;
} else if (this.isAbsoluteCartridge(requestContext.request)) {
const cartridgeName = requestContext.request.match(this.absoluteRegexp)[1];
relativeRequest = relativeRequest.replace(this.absoluteRegexp, '');
lookupCartrdiges = [this.cartridges[cartridgeName] ? cartridgeName : this.aliases[cartridgeName]];
} else if (!path.isAbsolute(requestContext.request)) {
if ('.' === requestContext.request) {
relativeRequest = this.getRelativeAsset(requestContext.context.issuer);
lookupCartrdiges = this.cartridgeNames.slice(currentCartridgeIndex + 1);
} else {
const relativeIssuer = this.getRelativeAsset(requestContext.context.issuer);
relativeRequest = this.getRelativeAsset(path.resolve(requestContext.path, requestContext.request));
lookupCartrdiges = relativeRequest === relativeIssuer ? this.cartridgeNames.slice(currentCartridgeIndex + 1) : this.cartridgeNames;
lookupCartrdiges = relativeRequest === relativeIssuer ? this.cartridgeNames.slice(currentCartridgeIndex + 1) : this.cartridgeNames;
}
}
}
if (lookupCartrdiges) {
const locale = this.getLocale(requestContext.context.issuer || requestContext.request);
const result = this.resolveFromCartrdiges(relativeRequest, lookupCartrdiges, locale);
if (lookupCartrdiges) {
const locale = this.getLocale(requestContext.context.issuer || requestContext.request);
const result = this.resolveFromCartrdiges(relativeRequest, lookupCartrdiges, locale);
if (result) {
const target = resolver.ensureHook('resolved');
requestContext.path = result;
if (result) {
const target = resolver.ensureHook('resolved');
requestContext.path = result;
return resolver.doResolve(target, requestContext, `${this.constructor.name} found: ${result}`, resolveContext, callback);
return resolver.doResolve(target, requestContext, `${this.constructor.name} found: ${result}`, resolveContext, callback);
}
}

@@ -244,2 +250,2 @@ }

module.exports = CartridgeResolverPlugin;
module.exports = CartridgeResolverPlugin;