Socket
Socket
Sign inDemoInstall

asset-resolver

Package Overview
Dependencies
Maintainers
1
Versions
37
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

asset-resolver - npm Package Compare versions

Comparing version 2.0.9 to 3.0.0

4

cli.js

@@ -30,7 +30,7 @@ #!/usr/bin/env node

.getResource(cli.input[0], cli.flags)
.then(resource => {
.then((resource) => {
console.log(resource.contents);
})
.catch(error => {
.catch((error) => {
console.error(error.message || error);
});

@@ -8,15 +8,15 @@ 'use strict';

return Promise.all(
promises.map(promise =>
promises.map((promise) =>
promise.then(
val => {
throw val;
(value) => {
throw value;
},
reason => reason
(error) => error
)
)
).then(
reasons => {
(reasons) => {
throw reasons;
},
firstResolved => firstResolved
(error) => error
);

@@ -26,3 +26,3 @@ }

module.exports.getResource = (file, options = {}) => {
const opts = {
const options_ = {
base: [process.cwd()],

@@ -33,19 +33,18 @@ filter: () => true,

if (!Array.isArray(opts.base)) {
opts.base = [opts.base];
if (!Array.isArray(options_.base)) {
options_.base = [options_.base];
}
opts.base = resolver.glob([...opts.base]);
options_.base = resolver.glob([...options_.base]);
const promises = (opts.base || []).map(base => {
return resolver.getResource(base, file, opts);
const promises = (options_.base || []).map((base) => {
return resolver.getResource(base, file, options_);
});
return any(promises).catch(error => {
const msg = [`The file "${file}" could not be resolved because of:`].concat(
error.map(err => err.message)
);
debug(msg);
return Promise.reject(new Error(msg.join('\n')));
return any(promises).catch((error) => {
const message = [
`The file "${file}" could not be resolved because of:`
].concat(error.map((err) => err.message));
debug(message);
return Promise.reject(new Error(message.join('\n')));
});
};

@@ -8,2 +8,3 @@ 'use strict';

const got = require('got');
const normalize = require('normalize-path');
const mime = require('mime');

@@ -21,7 +22,7 @@ const debug = require('debug')('asset-resolver');

function handle(filter) {
return resource => {
return (resource) => {
debug('handle request', resource.path);
return Promise.resolve(resource)
.then(filter)
.then(result => {
.then((result) => {
if (!result) {

@@ -55,13 +56,14 @@ debug('FAILED');

*/
function requestAsync(resource, opts = {}) {
function requestAsync(resource, options = {}) {
const settings = {
followRedirect: true,
encoding: null,
// encoding: null,
rejectUnauthorized: false,
retry: 0
// responseType: "buffer",
};
if (opts.user && opts.pass) {
if (options.user && options.pass) {
settings.headers = {
Authorization: `Basic ${token(opts.user, opts.pass)}`
Authorization: `Basic ${token(options.user, options.pass)}`
};

@@ -74,7 +76,7 @@ }

got(resource, settings)
.then(response => {
.then((response) => {
if (response.statusCode !== 200) {
const msg = `Wrong status code ${response.statusCode} for ${resource}`;
debug(msg);
return reject(new Error(msg));
const message = `Wrong status code ${response.statusCode} for ${resource}`;
debug(message);
return reject(new Error(message));
}

@@ -92,3 +94,3 @@

})
.catch(error => {
.catch((error) => {
debug('Url failed:', error.message || error);

@@ -106,3 +108,3 @@ return reject(error);

function readAsync(resource) {
return readFile(resource).then(body => {
return readFile(resource).then((body) => {
const mimeType = mime.getType(resource);

@@ -134,11 +136,11 @@

function glob(base) {
return base.reduce((res, val) => {
if (isUrl(val)) {
res.push(val);
return res;
return base.reduce((result, value) => {
if (isUrl(value)) {
result.push(value);
return result;
}
if (fs.existsSync(val) && fs.lstatSync(val).isDirectory()) {
res.push(val);
return res;
if (fs.existsSync(value) && fs.lstatSync(value).isDirectory()) {
result.push(value);
return result;
}

@@ -148,3 +150,7 @@

try {
files = globby.sync([val], {
const pattern =
value.endsWith('/') || value.endsWith('\\')
? value.slice(0, Math.max(0, value.length - 1))
: value;
files = globby.sync([normalize(pattern)], {
nodir: false,

@@ -158,14 +164,14 @@ onlyDirectories: true,

return [...res, ...files];
return [...result, ...files];
}, []);
}
function getResource(base, file, opts) {
function getResource(base, file, options) {
const resource = join(base, file);
if (cache[resource]) {
return cache[resource].then(handle(opts.filter));
return cache[resource].then(handle(options.filter));
}
if (isUrl(resource)) {
cache[resource] = requestAsync(resource, opts);
cache[resource] = requestAsync(resource, options);
} else {

@@ -175,3 +181,3 @@ cache[resource] = readAsync(resource);

return cache[resource].then(handle(opts.filter));
return cache[resource].then(handle(options.filter));
}

@@ -178,0 +184,0 @@

{
"name": "asset-resolver",
"version": "2.0.9",
"version": "3.0.0",
"description": "Find an asset in a set of locations",

@@ -10,7 +10,7 @@ "license": "MIT",

"email": "ben@sommerlaune.com",
"url": "sommerlaune.com"
"url": "https://www.sommerlaune.com"
},
"bin": "cli.js",
"engines": {
"node": ">= 8.6"
"node": ">=10"
},

@@ -33,14 +33,15 @@ "scripts": {

"debug": "^4.1.1",
"globby": "^9.2.0",
"got": "^9.6.0",
"meow": "5.0.0",
"mime": "^2.4.4"
"globby": "^11.0.0",
"got": "^11.1.3",
"meow": "^7.0.1",
"mime": "^2.4.5",
"normalize-path": "^3.0.0"
},
"devDependencies": {
"ava": "^2.4.0",
"ava": "^3.8.2",
"finalhandler": "^1.1.2",
"get-port": "^5.0.0",
"nyc": "^14.1.1",
"get-port": "^5.1.1",
"nyc": "^15.0.1",
"serve-static": "^1.14.1",
"xo": "^0.25.3"
"xo": "^0.30.0"
},

@@ -47,0 +48,0 @@ "xo": {

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc