asset-resolver
Advanced tools
Comparing version 1.0.7 to 1.1.0
10
index.js
'use strict'; | ||
const os = require('os'); | ||
const toarray = require('lodash/toArray'); | ||
const defaults = require('lodash/defaults'); | ||
const map = require('lodash/map'); | ||
const defaults = require('lodash.defaults'); | ||
const map = require('lodash.map'); | ||
const debug = require('debug')('asset-resolver'); | ||
@@ -22,3 +20,3 @@ const Bluebird = require('bluebird'); | ||
opts.base = resolver.glob(toarray(opts.base)); | ||
opts.base = resolver.glob([...opts.base]); | ||
@@ -30,4 +28,4 @@ return Bluebird.any(map(opts.base, base => { // eslint-disable-line promise/valid-params | ||
debug(msg); | ||
return Bluebird.reject(new Error(msg.join(os.EOL))); | ||
return Bluebird.reject(new Error(msg.join('\n'))); | ||
}); | ||
}; |
'use strict'; | ||
const path = require('path'); | ||
const url = require('url'); | ||
const fs = require('fs-extra'); | ||
const request = require('request'); | ||
const fs = require('fs'); | ||
const got = require('got'); | ||
const mime = require('mime'); | ||
const Bluebird = require('bluebird'); | ||
const debug = require('debug')('asset-resolver'); | ||
const result = require('lodash/result'); | ||
const reduce = require('lodash/reduce'); | ||
const result = require('lodash.result'); | ||
const reduce = require('lodash.reduce'); | ||
const globby = require('globby'); | ||
const cache = {}; | ||
const readFile = Bluebird.promisify(fs.readFile); | ||
@@ -57,3 +58,4 @@ function isUrl(resource) { | ||
encoding: null, | ||
rejectUnauthorized: false | ||
rejectUnauthorized: false, | ||
retry: 0 | ||
}; | ||
@@ -70,24 +72,23 @@ | ||
resource = url.resolve('http://te.st', resource); // eslint-disable-line node/no-deprecated-api | ||
request(resource, settings, (err, resp, body) => { | ||
let msg; | ||
if (err) { | ||
debug('Url failed:', err.message || err); | ||
return reject(err); | ||
} | ||
got(resource, settings) | ||
.then(response => { | ||
if (response.statusCode !== 200) { | ||
const msg = 'Wrong status code ' + response.statusCode + ' for ' + resource; | ||
debug(msg); | ||
return reject(new Error(msg)); | ||
} | ||
if (resp.statusCode !== 200) { | ||
msg = 'Wrong status code ' + resp.statusCode + ' for ' + resource; | ||
debug(msg); | ||
return reject(new Error(msg)); | ||
} | ||
const mimeType = | ||
result(response, 'headers.content-type') || mime.getType(resource); | ||
const mimeType = | ||
result(resp, 'headers.content-type') || mime.getType(resource); | ||
resolve({ | ||
contents: body, | ||
path: resource, | ||
mime: mimeType | ||
resolve({ | ||
contents: response.body, | ||
path: resource, | ||
mime: mimeType | ||
}); | ||
}) | ||
.catch(error => { | ||
debug('Url failed:', error.message || error); | ||
return reject(error); | ||
}); | ||
}); | ||
}); | ||
@@ -102,3 +103,3 @@ } | ||
function readAsync(resource) { | ||
return fs.readFile(resource).then(body => { | ||
return readFile(resource).then(body => { | ||
const mimeType = mime.getType(resource); | ||
@@ -105,0 +106,0 @@ |
{ | ||
"name": "asset-resolver", | ||
"version": "1.0.7", | ||
"version": "1.1.0", | ||
"description": "Find an asset in a set of locations", | ||
@@ -17,3 +17,5 @@ "license": "MIT", | ||
"scripts": { | ||
"test": "xo && nyc ava" | ||
"ava": "ava", | ||
"xo": "xo", | ||
"test": "npm run xo && nyc npm run ava" | ||
}, | ||
@@ -30,14 +32,12 @@ "files": [ | ||
"dependencies": { | ||
"bluebird": "^3.7.0", | ||
"bluebird": "^3.7.1", | ||
"debug": "^4.1.1", | ||
"filesize": "^3.6.1", | ||
"fs-extra": "^8.1.0", | ||
"globby": "^8.0.2", | ||
"got": "^8.3.2", | ||
"hash": "^0.2.1", | ||
"lodash": "^4.17.15", | ||
"lodash.defaults": "^4.2.0", | ||
"lodash.map": "^4.6.0", | ||
"lodash.reduce": "^4.6.0", | ||
"lodash.result": "^4.5.2", | ||
"meow": "^5.0.0", | ||
"mime": "^2.4.4", | ||
"object": "^0.1.1", | ||
"request": "^2.88.0" | ||
"mime": "^2.4.4" | ||
}, | ||
@@ -44,0 +44,0 @@ "devDependencies": { |
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
License Policy Violation
LicenseThis package is not allowed per your license policy. Review the package's license to ensure compliance.
Found 1 instance in 1 package
Filesystem access
Supply chain riskAccesses the file system, and could potentially read sensitive data.
Found 1 instance in 1 package
11446
10
+ Addedlodash.defaults@^4.2.0
+ Addedlodash.map@^4.6.0
+ Addedlodash.reduce@^4.6.0
+ Addedlodash.result@^4.5.2
+ Addedlodash.defaults@4.2.0(transitive)
+ Addedlodash.map@4.6.0(transitive)
+ Addedlodash.reduce@4.6.0(transitive)
+ Addedlodash.result@4.5.2(transitive)
- Removedfilesize@^3.6.1
- Removedfs-extra@^8.1.0
- Removedhash@^0.2.1
- Removedlodash@^4.17.15
- Removedobject@^0.1.1
- Removedrequest@^2.88.0
- Removedajv@6.12.6(transitive)
- Removedasn1@0.2.6(transitive)
- Removedassert-plus@1.0.0(transitive)
- Removedasynckit@0.4.0(transitive)
- Removedaws-sign2@0.7.0(transitive)
- Removedaws4@1.13.2(transitive)
- Removedbcrypt-pbkdf@1.0.2(transitive)
- Removedcaseless@0.12.0(transitive)
- Removedcombined-stream@1.0.8(transitive)
- Removedcore-util-is@1.0.2(transitive)
- Removeddashdash@1.14.1(transitive)
- Removeddelayed-stream@1.0.0(transitive)
- Removedecc-jsbn@0.1.2(transitive)
- Removedextend@3.0.2(transitive)
- Removedextsprintf@1.3.0(transitive)
- Removedfast-deep-equal@3.1.3(transitive)
- Removedfast-json-stable-stringify@2.1.0(transitive)
- Removedfilesize@3.6.1(transitive)
- Removedforever-agent@0.6.1(transitive)
- Removedform-data@2.3.3(transitive)
- Removedfs-extra@8.1.0(transitive)
- Removedgetpass@0.1.7(transitive)
- Removedhar-schema@2.0.0(transitive)
- Removedhar-validator@5.1.5(transitive)
- Removedhash@0.2.1(transitive)
- Removedhttp-signature@1.2.0(transitive)
- Removedis-typedarray@1.0.0(transitive)
- Removedisstream@0.1.2(transitive)
- Removedjsbn@0.1.1(transitive)
- Removedjson-schema@0.4.0(transitive)
- Removedjson-schema-traverse@0.4.1(transitive)
- Removedjson-stringify-safe@5.0.1(transitive)
- Removedjsonfile@4.0.0(transitive)
- Removedjsprim@1.4.2(transitive)
- Removedlodash@4.17.21(transitive)
- Removedmime-db@1.52.0(transitive)
- Removedmime-types@2.1.35(transitive)
- Removedoauth-sign@0.9.0(transitive)
- Removedobject@0.1.1(transitive)
- Removedperformance-now@2.1.0(transitive)
- Removedpsl@1.9.0(transitive)
- Removedpunycode@2.3.1(transitive)
- Removedqs@6.5.3(transitive)
- Removedrequest@2.88.2(transitive)
- Removedsafer-buffer@2.1.2(transitive)
- Removedsshpk@1.18.0(transitive)
- Removedtough-cookie@2.5.0(transitive)
- Removedtunnel-agent@0.6.0(transitive)
- Removedtweetnacl@0.14.5(transitive)
- Removeduniversalify@0.1.2(transitive)
- Removeduri-js@4.4.1(transitive)
- Removeduuid@3.4.0(transitive)
- Removedverror@1.10.0(transitive)
Updatedbluebird@^3.7.1