UNPKG

@stoplight/spectral

Version:

A flexible object linter with out of the box support for OpenAPI v2 and v3.

28 lines 979 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); const schema_1 = require("./schema"); const jp = require('jsonpath'); exports.schemaPath = (targetVal, opts, paths, otherValues) => { if (!targetVal || typeof targetVal !== 'object') return []; let object = targetVal; const { resolved } = otherValues; if (!resolved) { console.warn('schema-path expects a resolved object, but none was provided. Results may not be correct.'); } else { object = jp.value(resolved, jp.stringify(['$', ...paths.given])); } const relevantObject = opts.field ? object[opts.field] : object; if (!relevantObject) return []; let schemaObject; try { schemaObject = jp.value(object, opts.schemaPath); } catch (error) { console.error(error); } return schema_1.schema(relevantObject, { schema: schemaObject }, paths, otherValues); }; //# sourceMappingURL=schema-path.js.map