oas-resolver
Advanced tools
Comparing version 1.0.11 to 1.0.12
45
index.js
@@ -55,2 +55,7 @@ 'use strict'; | ||
state.parent[state.pkey] = {}; /* case:A(2) where the resolution fails */ | ||
if (options.fatal) { | ||
let ex = new Error('Internal $ref resolution failed '+obj[key]); | ||
if (options.promise) options.promise.reject(ex) | ||
else throw(ex); | ||
} | ||
} | ||
@@ -95,3 +100,4 @@ else { | ||
if (isRef(obj, key)) { | ||
if (obj.$fixed) delete obj.$fixed; | ||
if (typeof obj.$fixed !== 'undefined') delete obj.$fixed; | ||
if (!options.preserveMiro) delete obj['x-miro']; | ||
} | ||
@@ -146,3 +152,10 @@ }); | ||
data = jptr(data, fragment); | ||
if (data === false) data = {}; // case:A(2) where the resolution fails | ||
if (data === false) { | ||
data = {}; // case:A(2) where the resolution fails | ||
if (options.fatal) { | ||
let ex = new Error('Cached $ref resolution failed '+target+fragment); | ||
if (options.promise) options.promise.reject(ex) | ||
else throw(ex); | ||
} | ||
} | ||
} | ||
@@ -184,3 +197,10 @@ data = resolveAllInternal(data, context, pointer, fragment, target, options); | ||
data = jptr(data, fragment); | ||
if (data === false) data = {}; /* case:B(2) where the resolution fails */ | ||
if (data === false) { | ||
data = {}; /* case:B(2) where the resolution fails */ | ||
if (options.fatal) { | ||
let ex = new Error('Remote $ref resolution failed '+target+fragment); | ||
if (options.promise) options.promise.reject(ex) | ||
else throw(ex); | ||
} | ||
} | ||
} | ||
@@ -217,3 +237,10 @@ data = resolveAllInternal(data, context, pointer, fragment, target, options); | ||
data = jptr(data, fragment); | ||
if (data === false) data = {}; /* case:C(2) where the resolution fails */ | ||
if (data === false) { | ||
data = {}; /* case:C(2) where the resolution fails */ | ||
if (options.fatal) { | ||
let ex = new Error('File $ref resolution failed '+target+fragment); | ||
if (options.promise) options.promise.reject(ex) | ||
else throw(ex); | ||
} | ||
} | ||
} | ||
@@ -309,7 +336,6 @@ data = resolveAllInternal(data, context, pointer, fragment, target, options); | ||
refs[ref].data = data; | ||
let pointers = unique(refs[ref].paths).sort(function(a,b){ | ||
if (a.length < b.length) return -1; | ||
if (a.length > b.length) return +1; | ||
return 0; | ||
}); | ||
// sorting $refs by length causes bugs (due to overlapping regions?) | ||
let pointers = unique(refs[ref].paths); | ||
for (let ptr of pointers) { | ||
@@ -398,3 +424,2 @@ // shared x-ms-examples $refs confuse the fixupRefs heuristic in index.js | ||
} | ||
options.cache[options.source] = { '$ref': '#/' }; | ||
} | ||
@@ -401,0 +426,0 @@ |
{ | ||
"name": "oas-resolver", | ||
"version": "1.0.11", | ||
"version": "1.0.12", | ||
"description": "Resolve external $refs in OpenAPI (swagger) 2.0 / 3.x definitions", | ||
@@ -22,9 +22,9 @@ "main": "index.js", | ||
"dependencies": { | ||
"js-yaml": "^3.11.0", | ||
"node-fetch": "^2.1.1", | ||
"oas-kit-common": "^1.0.3", | ||
"reftools": "^1.0.2", | ||
"yargs": "^11.0.0" | ||
"js-yaml": "^3.12.0", | ||
"node-fetch": "^2.3.0", | ||
"oas-kit-common": "^1.0.4", | ||
"reftools": "^1.0.3", | ||
"yargs": "^12.0.2" | ||
}, | ||
"gitHead": "e1f081373030c7b331cbd4ebd1042c19b2784a18" | ||
"gitHead": "4862e159745d6ca06044bc3ebabe57a2ad8b7152" | ||
} |
@@ -34,2 +34,3 @@ #!/usr/bin/env node | ||
if (argv.quiet) options.verbose = options.verbose - argv.quiet; | ||
options.fatal = true; | ||
@@ -36,0 +37,0 @@ function main(str,source,options){ |
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
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
23127
475
+ Addedcamelcase@5.3.1(transitive)
+ Addedfind-up@3.0.0(transitive)
+ Addedlocate-path@3.0.0(transitive)
+ Addedp-limit@2.3.0(transitive)
+ Addedp-locate@3.0.0(transitive)
+ Addedp-try@2.2.0(transitive)
+ Addedy18n@4.0.3(transitive)
+ Addedyargs@12.0.5(transitive)
+ Addedyargs-parser@11.1.1(transitive)
- Removedcamelcase@4.1.0(transitive)
- Removedfind-up@2.1.0(transitive)
- Removedlocate-path@2.0.0(transitive)
- Removedp-limit@1.3.0(transitive)
- Removedp-locate@2.0.0(transitive)
- Removedp-try@1.0.0(transitive)
- Removedy18n@3.2.2(transitive)
- Removedyargs@11.1.1(transitive)
- Removedyargs-parser@9.0.2(transitive)
Updatedjs-yaml@^3.12.0
Updatednode-fetch@^2.3.0
Updatedoas-kit-common@^1.0.4
Updatedreftools@^1.0.3
Updatedyargs@^12.0.2