UNPKG

dependency-cruiser

Version:

Validate and visualize dependencies. With your rules. JavaScript, TypeScript, CoffeeScript. ES6, CommonJS, AMD.

1 lines 204 kB
"use strict";export const validate=K;export default K;const ze={type:"object",required:["SHA1","changes"],properties:{cacheFormatVersion:{type:"number"},SHA1:{type:"string"},changes:{type:"array",items:{type:"object",required:["name","type"],properties:{name:{type:"string"},type:{type:"string",enum:["added","copied","deleted","modified","renamed","type changed","unmerged","pairing broken","unknown","unmodified","untracked","ignored"]},oldName:{type:"string"},checksum:{type:"string"},args:{type:"array",items:{type:"string"}},rulesFile:{type:"string"}}}}}};const Be={type:"object",required:["source","dependencies","valid"],additionalProperties:!1,properties:{source:{type:"string"},valid:{type:"boolean"},dependencies:{$ref:"#/definitions/DependenciesType"},dependents:{type:"array",items:{type:"string"}},followable:{type:"boolean"},matchesDoNotFollow:{type:"boolean"},matchesFocus:{type:"boolean"},matchesReaches:{type:"boolean"},matchesHighlight:{type:"boolean"},coreModule:{type:"boolean"},couldNotResolve:{type:"boolean"},dependencyTypes:{type:"array",items:{$ref:"#/definitions/DependencyTypeType"}},license:{type:"string"},orphan:{type:"boolean"},reachable:{type:"array",items:{$ref:"#/definitions/ReachableType"}},reaches:{type:"array",items:{$ref:"#/definitions/ReachesType"}},rules:{type:"array",items:{$ref:"#/definitions/RuleSummaryType"}},consolidated:{type:"boolean"},instability:{type:"number"},experimentalStats:{$ref:"#/definitions/ExperimentalStatsType"},checksum:{type:"string"}}},be={type:"string",enum:["aliased-subpath-import","aliased-tsconfig-base-url","aliased-tsconfig-paths","aliased-tsconfig","aliased-webpack","aliased-workspace","aliased","amd-define","amd-require","amd-exotic-require","core","deprecated","dynamic-import","exotic-require","export","import-equals","import","jsdoc","jsdoc-bracket-import","jsdoc-import-tag","local","localmodule","npm-bundled","npm-dev","npm-no-pkg","npm-optional","npm-peer","npm-unknown","npm","pre-compilation-only","process-get-builtin-module","require","triple-slash-amd-dependency","triple-slash-directive","triple-slash-file-reference","triple-slash-type-reference","type-import","type-only","undetermined","unknown"]};const Ae=Object.prototype.hasOwnProperty;const Ue={type:"object",required:["circular","coreModule","couldNotResolve","dependencyTypes","exoticallyRequired","dynamic","followable","module","moduleSystem","resolved","valid"],additionalProperties:!1,properties:{module:{type:"string"},protocol:{type:"string",enum:["data:","file:","node:","bun:"]},mimeType:{type:"string"},resolved:{type:"string"},coreModule:{type:"boolean"},dependencyTypes:{type:"array",items:{$ref:"#/definitions/DependencyTypeType"}},license:{type:"string"},followable:{type:"boolean"},dynamic:{type:"boolean"},exoticallyRequired:{type:"boolean"},exoticRequire:{type:"string"},matchesDoNotFollow:{type:"boolean"},couldNotResolve:{type:"boolean"},preCompilationOnly:{type:"boolean"},typeOnly:{type:"boolean"},circular:{type:"boolean"},cycle:{type:"array",items:{$ref:"#/definitions/MiniDependency"}},moduleSystem:{$ref:"#/definitions/ModuleSystemType"},valid:{type:"boolean"},rules:{type:"array",items:{$ref:"#/definitions/RuleSummaryType"}},instability:{type:"number"}}},Ve={type:"string",enum:["cjs","es6","amd","tsd"]};function G(s,{instancePath:t="",parentData:C,parentDataProperty:I,rootData:O=s}={}){let r=null,e=0;if(e===0)if(s&&typeof s=="object"&&!Array.isArray(s)){let a;if(s.name===void 0&&(a="name")||s.dependencyTypes===void 0&&(a="dependencyTypes"))return G.errors=[{instancePath:t,schemaPath:"#/required",keyword:"required",params:{missingProperty:a},message:"must have required property '"+a+"'"}],!1;{const n=e;for(const u in s)if(!(u==="name"||u==="dependencyTypes")){return G.errors=[{instancePath:t,schemaPath:"#/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:u},message:"must NOT have additional properties"}],!1;break}if(n===e){if(s.name!==void 0){const u=e;if(typeof s.name!="string")return G.errors=[{instancePath:t+"/name",schemaPath:"#/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=u===e}else var i=!0;if(i)if(s.dependencyTypes!==void 0){let u=s.dependencyTypes;const T=e;if(e===T)if(Array.isArray(u)){var m=!0;const g=u.length;for(let f=0;f<g;f++){let p=u[f];const o=e;if(typeof p!="string")return G.errors=[{instancePath:t+"/dependencyTypes/"+f,schemaPath:"#/definitions/DependencyTypeType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;if(!(p==="aliased-subpath-import"||p==="aliased-tsconfig-base-url"||p==="aliased-tsconfig-paths"||p==="aliased-tsconfig"||p==="aliased-webpack"||p==="aliased-workspace"||p==="aliased"||p==="amd-define"||p==="amd-require"||p==="amd-exotic-require"||p==="core"||p==="deprecated"||p==="dynamic-import"||p==="exotic-require"||p==="export"||p==="import-equals"||p==="import"||p==="jsdoc"||p==="jsdoc-bracket-import"||p==="jsdoc-import-tag"||p==="local"||p==="localmodule"||p==="npm-bundled"||p==="npm-dev"||p==="npm-no-pkg"||p==="npm-optional"||p==="npm-peer"||p==="npm-unknown"||p==="npm"||p==="pre-compilation-only"||p==="process-get-builtin-module"||p==="require"||p==="triple-slash-amd-dependency"||p==="triple-slash-directive"||p==="triple-slash-file-reference"||p==="triple-slash-type-reference"||p==="type-import"||p==="type-only"||p==="undetermined"||p==="unknown"))return G.errors=[{instancePath:t+"/dependencyTypes/"+f,schemaPath:"#/definitions/DependencyTypeType/enum",keyword:"enum",params:{allowedValues:be.enum},message:"must be equal to one of the allowed values"}],!1;var m=o===e;if(!m)break}}else return G.errors=[{instancePath:t+"/dependencyTypes",schemaPath:"#/properties/dependencyTypes/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=T===e}else var i=!0}}}else return G.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return G.errors=r,e===0}const xe={type:"string",enum:["error","warn","info","ignore"]};function Q(s,{instancePath:t="",parentData:C,parentDataProperty:I,rootData:O=s}={}){let r=null,e=0;if(e===0)if(s&&typeof s=="object"&&!Array.isArray(s)){let m;if(s.name===void 0&&(m="name")||s.severity===void 0&&(m="severity"))return Q.errors=[{instancePath:t,schemaPath:"#/required",keyword:"required",params:{missingProperty:m},message:"must have required property '"+m+"'"}],!1;{const a=e;for(const n in s)if(!(n==="name"||n==="severity")){return Q.errors=[{instancePath:t,schemaPath:"#/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:n},message:"must NOT have additional properties"}],!1;break}if(a===e){if(s.name!==void 0){const n=e;if(typeof s.name!="string")return Q.errors=[{instancePath:t+"/name",schemaPath:"#/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=n===e}else var i=!0;if(i)if(s.severity!==void 0){let n=s.severity;const u=e;if(typeof n!="string")return Q.errors=[{instancePath:t+"/severity",schemaPath:"#/definitions/SeverityType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;if(!(n==="error"||n==="warn"||n==="info"||n==="ignore"))return Q.errors=[{instancePath:t+"/severity",schemaPath:"#/definitions/SeverityType/enum",keyword:"enum",params:{allowedValues:xe.enum},message:"must be equal to one of the allowed values"}],!1;var i=u===e}else var i=!0}}}else return Q.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return Q.errors=r,e===0}function L(s,{instancePath:t="",parentData:C,parentDataProperty:I,rootData:O=s}={}){let r=null,e=0;if(e===0)if(s&&typeof s=="object"&&!Array.isArray(s)){let u;if(s.circular===void 0&&(u="circular")||s.coreModule===void 0&&(u="coreModule")||s.couldNotResolve===void 0&&(u="couldNotResolve")||s.dependencyTypes===void 0&&(u="dependencyTypes")||s.exoticallyRequired===void 0&&(u="exoticallyRequired")||s.dynamic===void 0&&(u="dynamic")||s.followable===void 0&&(u="followable")||s.module===void 0&&(u="module")||s.moduleSystem===void 0&&(u="moduleSystem")||s.resolved===void 0&&(u="resolved")||s.valid===void 0&&(u="valid"))return L.errors=[{instancePath:t,schemaPath:"#/required",keyword:"required",params:{missingProperty:u},message:"must have required property '"+u+"'"}],!1;{const T=e;for(const l in s)if(!Ae.call(Ue.properties,l)){return L.errors=[{instancePath:t,schemaPath:"#/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:l},message:"must NOT have additional properties"}],!1;break}if(T===e){if(s.module!==void 0){const l=e;if(typeof s.module!="string")return L.errors=[{instancePath:t+"/module",schemaPath:"#/properties/module/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=l===e}else var i=!0;if(i){if(s.protocol!==void 0){let l=s.protocol;const g=e;if(typeof l!="string")return L.errors=[{instancePath:t+"/protocol",schemaPath:"#/properties/protocol/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;if(!(l==="data:"||l==="file:"||l==="node:"||l==="bun:"))return L.errors=[{instancePath:t+"/protocol",schemaPath:"#/properties/protocol/enum",keyword:"enum",params:{allowedValues:Ue.properties.protocol.enum},message:"must be equal to one of the allowed values"}],!1;var i=g===e}else var i=!0;if(i){if(s.mimeType!==void 0){const l=e;if(typeof s.mimeType!="string")return L.errors=[{instancePath:t+"/mimeType",schemaPath:"#/properties/mimeType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=l===e}else var i=!0;if(i){if(s.resolved!==void 0){const l=e;if(typeof s.resolved!="string")return L.errors=[{instancePath:t+"/resolved",schemaPath:"#/properties/resolved/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=l===e}else var i=!0;if(i){if(s.coreModule!==void 0){const l=e;if(typeof s.coreModule!="boolean")return L.errors=[{instancePath:t+"/coreModule",schemaPath:"#/properties/coreModule/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=l===e}else var i=!0;if(i){if(s.dependencyTypes!==void 0){let l=s.dependencyTypes;const g=e;if(e===g)if(Array.isArray(l)){var m=!0;const p=l.length;for(let o=0;o<p;o++){let c=l[o];const v=e;if(typeof c!="string")return L.errors=[{instancePath:t+"/dependencyTypes/"+o,schemaPath:"#/definitions/DependencyTypeType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;if(!(c==="aliased-subpath-import"||c==="aliased-tsconfig-base-url"||c==="aliased-tsconfig-paths"||c==="aliased-tsconfig"||c==="aliased-webpack"||c==="aliased-workspace"||c==="aliased"||c==="amd-define"||c==="amd-require"||c==="amd-exotic-require"||c==="core"||c==="deprecated"||c==="dynamic-import"||c==="exotic-require"||c==="export"||c==="import-equals"||c==="import"||c==="jsdoc"||c==="jsdoc-bracket-import"||c==="jsdoc-import-tag"||c==="local"||c==="localmodule"||c==="npm-bundled"||c==="npm-dev"||c==="npm-no-pkg"||c==="npm-optional"||c==="npm-peer"||c==="npm-unknown"||c==="npm"||c==="pre-compilation-only"||c==="process-get-builtin-module"||c==="require"||c==="triple-slash-amd-dependency"||c==="triple-slash-directive"||c==="triple-slash-file-reference"||c==="triple-slash-type-reference"||c==="type-import"||c==="type-only"||c==="undetermined"||c==="unknown"))return L.errors=[{instancePath:t+"/dependencyTypes/"+o,schemaPath:"#/definitions/DependencyTypeType/enum",keyword:"enum",params:{allowedValues:be.enum},message:"must be equal to one of the allowed values"}],!1;var m=v===e;if(!m)break}}else return L.errors=[{instancePath:t+"/dependencyTypes",schemaPath:"#/properties/dependencyTypes/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=g===e}else var i=!0;if(i){if(s.license!==void 0){const l=e;if(typeof s.license!="string")return L.errors=[{instancePath:t+"/license",schemaPath:"#/properties/license/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=l===e}else var i=!0;if(i){if(s.followable!==void 0){const l=e;if(typeof s.followable!="boolean")return L.errors=[{instancePath:t+"/followable",schemaPath:"#/properties/followable/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=l===e}else var i=!0;if(i){if(s.dynamic!==void 0){const l=e;if(typeof s.dynamic!="boolean")return L.errors=[{instancePath:t+"/dynamic",schemaPath:"#/properties/dynamic/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=l===e}else var i=!0;if(i){if(s.exoticallyRequired!==void 0){const l=e;if(typeof s.exoticallyRequired!="boolean")return L.errors=[{instancePath:t+"/exoticallyRequired",schemaPath:"#/properties/exoticallyRequired/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=l===e}else var i=!0;if(i){if(s.exoticRequire!==void 0){const l=e;if(typeof s.exoticRequire!="string")return L.errors=[{instancePath:t+"/exoticRequire",schemaPath:"#/properties/exoticRequire/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=l===e}else var i=!0;if(i){if(s.matchesDoNotFollow!==void 0){const l=e;if(typeof s.matchesDoNotFollow!="boolean")return L.errors=[{instancePath:t+"/matchesDoNotFollow",schemaPath:"#/properties/matchesDoNotFollow/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=l===e}else var i=!0;if(i){if(s.couldNotResolve!==void 0){const l=e;if(typeof s.couldNotResolve!="boolean")return L.errors=[{instancePath:t+"/couldNotResolve",schemaPath:"#/properties/couldNotResolve/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=l===e}else var i=!0;if(i){if(s.preCompilationOnly!==void 0){const l=e;if(typeof s.preCompilationOnly!="boolean")return L.errors=[{instancePath:t+"/preCompilationOnly",schemaPath:"#/properties/preCompilationOnly/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=l===e}else var i=!0;if(i){if(s.typeOnly!==void 0){const l=e;if(typeof s.typeOnly!="boolean")return L.errors=[{instancePath:t+"/typeOnly",schemaPath:"#/properties/typeOnly/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=l===e}else var i=!0;if(i){if(s.circular!==void 0){const l=e;if(typeof s.circular!="boolean")return L.errors=[{instancePath:t+"/circular",schemaPath:"#/properties/circular/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=l===e}else var i=!0;if(i){if(s.cycle!==void 0){let l=s.cycle;const g=e;if(e===g)if(Array.isArray(l)){var a=!0;const p=l.length;for(let o=0;o<p;o++){const c=e;G(l[o],{instancePath:t+"/cycle/"+o,parentData:l,parentDataProperty:o,rootData:O})||(r=r===null?G.errors:r.concat(G.errors),e=r.length);var a=c===e;if(!a)break}}else return L.errors=[{instancePath:t+"/cycle",schemaPath:"#/properties/cycle/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=g===e}else var i=!0;if(i){if(s.moduleSystem!==void 0){let l=s.moduleSystem;const g=e;if(typeof l!="string")return L.errors=[{instancePath:t+"/moduleSystem",schemaPath:"#/definitions/ModuleSystemType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;if(!(l==="cjs"||l==="es6"||l==="amd"||l==="tsd"))return L.errors=[{instancePath:t+"/moduleSystem",schemaPath:"#/definitions/ModuleSystemType/enum",keyword:"enum",params:{allowedValues:Ve.enum},message:"must be equal to one of the allowed values"}],!1;var i=g===e}else var i=!0;if(i){if(s.valid!==void 0){const l=e;if(typeof s.valid!="boolean")return L.errors=[{instancePath:t+"/valid",schemaPath:"#/properties/valid/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=l===e}else var i=!0;if(i){if(s.rules!==void 0){let l=s.rules;const g=e;if(e===g)if(Array.isArray(l)){var n=!0;const p=l.length;for(let o=0;o<p;o++){const c=e;Q(l[o],{instancePath:t+"/rules/"+o,parentData:l,parentDataProperty:o,rootData:O})||(r=r===null?Q.errors:r.concat(Q.errors),e=r.length);var n=c===e;if(!n)break}}else return L.errors=[{instancePath:t+"/rules",schemaPath:"#/properties/rules/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=g===e}else var i=!0;if(i)if(s.instability!==void 0){let l=s.instability;const g=e;if(!(typeof l=="number"&&isFinite(l)))return L.errors=[{instancePath:t+"/instability",schemaPath:"#/properties/instability/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var i=g===e}else var i=!0}}}}}}}}}}}}}}}}}}}}}}else return L.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return L.errors=r,e===0}function Ne(s,{instancePath:t="",parentData:C,parentDataProperty:I,rootData:O=s}={}){let r=null,e=0;if(e===0)if(Array.isArray(s)){var i=!0;const m=s.length;for(let a=0;a<m;a++){const n=e;L(s[a],{instancePath:t+"/"+a,parentData:s,parentDataProperty:a,rootData:O})||(r=r===null?L.errors:r.concat(L.errors),e=r.length);var i=n===e;if(!i)break}}else return Ne.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;return Ne.errors=r,e===0}function X(s,{instancePath:t="",parentData:C,parentDataProperty:I,rootData:O=s}={}){let r=null,e=0;if(e===0)if(s&&typeof s=="object"&&!Array.isArray(s)){let u;if(s.modules===void 0&&(u="modules")||s.asDefinedInRule===void 0&&(u="asDefinedInRule"))return X.errors=[{instancePath:t,schemaPath:"#/required",keyword:"required",params:{missingProperty:u},message:"must have required property '"+u+"'"}],!1;{const T=e;for(const l in s)if(!(l==="modules"||l==="asDefinedInRule")){return X.errors=[{instancePath:t,schemaPath:"#/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:l},message:"must NOT have additional properties"}],!1;break}if(T===e){if(s.modules!==void 0){let l=s.modules;const g=e;if(e===g)if(Array.isArray(l)){var i=!0;const f=l.length;for(let p=0;p<f;p++){let o=l[p];const c=e;if(e===c)if(o&&typeof o=="object"&&!Array.isArray(o)){let y;if(o.source===void 0&&(y="source")||o.via===void 0&&(y="via"))return X.errors=[{instancePath:t+"/modules/"+p,schemaPath:"#/properties/modules/items/required",keyword:"required",params:{missingProperty:y},message:"must have required property '"+y+"'"}],!1;{const h=e;for(const b in o)if(!(b==="source"||b==="via")){return X.errors=[{instancePath:t+"/modules/"+p,schemaPath:"#/properties/modules/items/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:b},message:"must NOT have additional properties"}],!1;break}if(h===e){if(o.source!==void 0){const b=e;if(typeof o.source!="string")return X.errors=[{instancePath:t+"/modules/"+p+"/source",schemaPath:"#/properties/modules/items/properties/source/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var m=b===e}else var m=!0;if(m)if(o.via!==void 0){let b=o.via;const x=e;if(e===x)if(Array.isArray(b)){var a=!0;const H=b.length;for(let $=0;$<H;$++){const A=e;G(b[$],{instancePath:t+"/modules/"+p+"/via/"+$,parentData:b,parentDataProperty:$,rootData:O})||(r=r===null?G.errors:r.concat(G.errors),e=r.length);var a=A===e;if(!a)break}}else return X.errors=[{instancePath:t+"/modules/"+p+"/via",schemaPath:"#/properties/modules/items/properties/via/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var m=x===e}else var m=!0}}}else return X.errors=[{instancePath:t+"/modules/"+p,schemaPath:"#/properties/modules/items/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var i=c===e;if(!i)break}}else return X.errors=[{instancePath:t+"/modules",schemaPath:"#/properties/modules/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var n=g===e}else var n=!0;if(n)if(s.asDefinedInRule!==void 0){const l=e;if(typeof s.asDefinedInRule!="string")return X.errors=[{instancePath:t+"/asDefinedInRule",schemaPath:"#/properties/asDefinedInRule/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var n=l===e}else var n=!0}}}else return X.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return X.errors=r,e===0}function U(s,{instancePath:t="",parentData:C,parentDataProperty:I,rootData:O=s}={}){let r=null,e=0;if(e===0)if(s&&typeof s=="object"&&!Array.isArray(s)){let f;if(s.source===void 0&&(f="source")||s.dependencies===void 0&&(f="dependencies")||s.valid===void 0&&(f="valid"))return U.errors=[{instancePath:t,schemaPath:"#/required",keyword:"required",params:{missingProperty:f},message:"must have required property '"+f+"'"}],!1;{const p=e;for(const o in s)if(!Ae.call(Be.properties,o)){return U.errors=[{instancePath:t,schemaPath:"#/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:o},message:"must NOT have additional properties"}],!1;break}if(p===e){if(s.source!==void 0){const o=e;if(typeof s.source!="string")return U.errors=[{instancePath:t+"/source",schemaPath:"#/properties/source/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=o===e}else var i=!0;if(i){if(s.valid!==void 0){const o=e;if(typeof s.valid!="boolean")return U.errors=[{instancePath:t+"/valid",schemaPath:"#/properties/valid/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=o===e}else var i=!0;if(i){if(s.dependencies!==void 0){const o=e;Ne(s.dependencies,{instancePath:t+"/dependencies",parentData:s,parentDataProperty:"dependencies",rootData:O})||(r=r===null?Ne.errors:r.concat(Ne.errors),e=r.length);var i=o===e}else var i=!0;if(i){if(s.dependents!==void 0){let o=s.dependents;const c=e;if(e===c)if(Array.isArray(o)){var m=!0;const y=o.length;for(let h=0;h<y;h++){const b=e;if(typeof o[h]!="string")return U.errors=[{instancePath:t+"/dependents/"+h,schemaPath:"#/properties/dependents/items/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var m=b===e;if(!m)break}}else return U.errors=[{instancePath:t+"/dependents",schemaPath:"#/properties/dependents/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=c===e}else var i=!0;if(i){if(s.followable!==void 0){const o=e;if(typeof s.followable!="boolean")return U.errors=[{instancePath:t+"/followable",schemaPath:"#/properties/followable/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=o===e}else var i=!0;if(i){if(s.matchesDoNotFollow!==void 0){const o=e;if(typeof s.matchesDoNotFollow!="boolean")return U.errors=[{instancePath:t+"/matchesDoNotFollow",schemaPath:"#/properties/matchesDoNotFollow/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=o===e}else var i=!0;if(i){if(s.matchesFocus!==void 0){const o=e;if(typeof s.matchesFocus!="boolean")return U.errors=[{instancePath:t+"/matchesFocus",schemaPath:"#/properties/matchesFocus/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=o===e}else var i=!0;if(i){if(s.matchesReaches!==void 0){const o=e;if(typeof s.matchesReaches!="boolean")return U.errors=[{instancePath:t+"/matchesReaches",schemaPath:"#/properties/matchesReaches/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=o===e}else var i=!0;if(i){if(s.matchesHighlight!==void 0){const o=e;if(typeof s.matchesHighlight!="boolean")return U.errors=[{instancePath:t+"/matchesHighlight",schemaPath:"#/properties/matchesHighlight/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=o===e}else var i=!0;if(i){if(s.coreModule!==void 0){const o=e;if(typeof s.coreModule!="boolean")return U.errors=[{instancePath:t+"/coreModule",schemaPath:"#/properties/coreModule/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=o===e}else var i=!0;if(i){if(s.couldNotResolve!==void 0){const o=e;if(typeof s.couldNotResolve!="boolean")return U.errors=[{instancePath:t+"/couldNotResolve",schemaPath:"#/properties/couldNotResolve/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=o===e}else var i=!0;if(i){if(s.dependencyTypes!==void 0){let o=s.dependencyTypes;const c=e;if(e===c)if(Array.isArray(o)){var a=!0;const y=o.length;for(let h=0;h<y;h++){let b=o[h];const x=e;if(typeof b!="string")return U.errors=[{instancePath:t+"/dependencyTypes/"+h,schemaPath:"#/definitions/DependencyTypeType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;if(!(b==="aliased-subpath-import"||b==="aliased-tsconfig-base-url"||b==="aliased-tsconfig-paths"||b==="aliased-tsconfig"||b==="aliased-webpack"||b==="aliased-workspace"||b==="aliased"||b==="amd-define"||b==="amd-require"||b==="amd-exotic-require"||b==="core"||b==="deprecated"||b==="dynamic-import"||b==="exotic-require"||b==="export"||b==="import-equals"||b==="import"||b==="jsdoc"||b==="jsdoc-bracket-import"||b==="jsdoc-import-tag"||b==="local"||b==="localmodule"||b==="npm-bundled"||b==="npm-dev"||b==="npm-no-pkg"||b==="npm-optional"||b==="npm-peer"||b==="npm-unknown"||b==="npm"||b==="pre-compilation-only"||b==="process-get-builtin-module"||b==="require"||b==="triple-slash-amd-dependency"||b==="triple-slash-directive"||b==="triple-slash-file-reference"||b==="triple-slash-type-reference"||b==="type-import"||b==="type-only"||b==="undetermined"||b==="unknown"))return U.errors=[{instancePath:t+"/dependencyTypes/"+h,schemaPath:"#/definitions/DependencyTypeType/enum",keyword:"enum",params:{allowedValues:be.enum},message:"must be equal to one of the allowed values"}],!1;var a=x===e;if(!a)break}}else return U.errors=[{instancePath:t+"/dependencyTypes",schemaPath:"#/properties/dependencyTypes/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=c===e}else var i=!0;if(i){if(s.license!==void 0){const o=e;if(typeof s.license!="string")return U.errors=[{instancePath:t+"/license",schemaPath:"#/properties/license/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=o===e}else var i=!0;if(i){if(s.orphan!==void 0){const o=e;if(typeof s.orphan!="boolean")return U.errors=[{instancePath:t+"/orphan",schemaPath:"#/properties/orphan/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=o===e}else var i=!0;if(i){if(s.reachable!==void 0){let o=s.reachable;const c=e;if(e===c)if(Array.isArray(o)){var n=!0;const y=o.length;for(let h=0;h<y;h++){let b=o[h];const x=e;if(e===e)if(b&&typeof b=="object"&&!Array.isArray(b)){let $;if(b.value===void 0&&($="value")||b.asDefinedInRule===void 0&&($="asDefinedInRule")||b.matchedFrom===void 0&&($="matchedFrom"))return U.errors=[{instancePath:t+"/reachable/"+h,schemaPath:"#/definitions/ReachableType/required",keyword:"required",params:{missingProperty:$},message:"must have required property '"+$+"'"}],!1;{const A=e;for(const D in b)if(!(D==="value"||D==="asDefinedInRule"||D==="matchedFrom")){return U.errors=[{instancePath:t+"/reachable/"+h,schemaPath:"#/definitions/ReachableType/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:D},message:"must NOT have additional properties"}],!1;break}if(A===e){if(b.value!==void 0){const D=e;if(typeof b.value!="boolean")return U.errors=[{instancePath:t+"/reachable/"+h+"/value",schemaPath:"#/definitions/ReachableType/properties/value/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var u=D===e}else var u=!0;if(u){if(b.asDefinedInRule!==void 0){const D=e;if(typeof b.asDefinedInRule!="string")return U.errors=[{instancePath:t+"/reachable/"+h+"/asDefinedInRule",schemaPath:"#/definitions/ReachableType/properties/asDefinedInRule/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var u=D===e}else var u=!0;if(u)if(b.matchedFrom!==void 0){const D=e;if(typeof b.matchedFrom!="string")return U.errors=[{instancePath:t+"/reachable/"+h+"/matchedFrom",schemaPath:"#/definitions/ReachableType/properties/matchedFrom/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var u=D===e}else var u=!0}}}}else return U.errors=[{instancePath:t+"/reachable/"+h,schemaPath:"#/definitions/ReachableType/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var n=x===e;if(!n)break}}else return U.errors=[{instancePath:t+"/reachable",schemaPath:"#/properties/reachable/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=c===e}else var i=!0;if(i){if(s.reaches!==void 0){let o=s.reaches;const c=e;if(e===c)if(Array.isArray(o)){var T=!0;const y=o.length;for(let h=0;h<y;h++){const b=e;X(o[h],{instancePath:t+"/reaches/"+h,parentData:o,parentDataProperty:h,rootData:O})||(r=r===null?X.errors:r.concat(X.errors),e=r.length);var T=b===e;if(!T)break}}else return U.errors=[{instancePath:t+"/reaches",schemaPath:"#/properties/reaches/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=c===e}else var i=!0;if(i){if(s.rules!==void 0){let o=s.rules;const c=e;if(e===c)if(Array.isArray(o)){var l=!0;const y=o.length;for(let h=0;h<y;h++){const b=e;Q(o[h],{instancePath:t+"/rules/"+h,parentData:o,parentDataProperty:h,rootData:O})||(r=r===null?Q.errors:r.concat(Q.errors),e=r.length);var l=b===e;if(!l)break}}else return U.errors=[{instancePath:t+"/rules",schemaPath:"#/properties/rules/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=c===e}else var i=!0;if(i){if(s.consolidated!==void 0){const o=e;if(typeof s.consolidated!="boolean")return U.errors=[{instancePath:t+"/consolidated",schemaPath:"#/properties/consolidated/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var i=o===e}else var i=!0;if(i){if(s.instability!==void 0){let o=s.instability;const c=e;if(!(typeof o=="number"&&isFinite(o)))return U.errors=[{instancePath:t+"/instability",schemaPath:"#/properties/instability/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var i=c===e}else var i=!0;if(i){if(s.experimentalStats!==void 0){let o=s.experimentalStats;const c=e;if(e===e)if(o&&typeof o=="object"&&!Array.isArray(o)){let h;if(o.size===void 0&&(h="size")||o.topLevelStatementCount===void 0&&(h="topLevelStatementCount"))return U.errors=[{instancePath:t+"/experimentalStats",schemaPath:"#/definitions/ExperimentalStatsType/required",keyword:"required",params:{missingProperty:h},message:"must have required property '"+h+"'"}],!1;{const b=e;for(const x in o)if(!(x==="topLevelStatementCount"||x==="size")){return U.errors=[{instancePath:t+"/experimentalStats",schemaPath:"#/definitions/ExperimentalStatsType/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:x},message:"must NOT have additional properties"}],!1;break}if(b===e){if(o.topLevelStatementCount!==void 0){let x=o.topLevelStatementCount;const N=e;if(!(typeof x=="number"&&isFinite(x)))return U.errors=[{instancePath:t+"/experimentalStats/topLevelStatementCount",schemaPath:"#/definitions/ExperimentalStatsType/properties/topLevelStatementCount/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var g=N===e}else var g=!0;if(g)if(o.size!==void 0){let x=o.size;const N=e;if(!(typeof x=="number"&&isFinite(x)))return U.errors=[{instancePath:t+"/experimentalStats/size",schemaPath:"#/definitions/ExperimentalStatsType/properties/size/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var g=N===e}else var g=!0}}}else return U.errors=[{instancePath:t+"/experimentalStats",schemaPath:"#/definitions/ExperimentalStatsType/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var i=c===e}else var i=!0;if(i)if(s.checksum!==void 0){const o=e;if(typeof s.checksum!="string")return U.errors=[{instancePath:t+"/checksum",schemaPath:"#/properties/checksum/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=o===e}else var i=!0}}}}}}}}}}}}}}}}}}}}}}else return U.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return U.errors=r,e===0}function qe(s,{instancePath:t="",parentData:C,parentDataProperty:I,rootData:O=s}={}){let r=null,e=0;if(e===0)if(Array.isArray(s)){var i=!0;const m=s.length;for(let a=0;a<m;a++){const n=e;U(s[a],{instancePath:t+"/"+a,parentData:s,parentDataProperty:a,rootData:O})||(r=r===null?U.errors:r.concat(U.errors),e=r.length);var i=n===e;if(!i)break}}else return qe.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;return qe.errors=r,e===0}function z(s,{instancePath:t="",parentData:C,parentDataProperty:I,rootData:O=s}={}){let r=null,e=0;if(e===0)if(s&&typeof s=="object"&&!Array.isArray(s)){let g;if(s.name===void 0&&(g="name")||s.moduleCount===void 0&&(g="moduleCount"))return z.errors=[{instancePath:t,schemaPath:"#/required",keyword:"required",params:{missingProperty:g},message:"must have required property '"+g+"'"}],!1;{const f=e;for(const p in s)if(!(p==="name"||p==="dependents"||p==="dependencies"||p==="moduleCount"||p==="afferentCouplings"||p==="efferentCouplings"||p==="instability"||p==="experimentalStats")){return z.errors=[{instancePath:t,schemaPath:"#/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:p},message:"must NOT have additional properties"}],!1;break}if(f===e){if(s.name!==void 0){const p=e;if(typeof s.name!="string")return z.errors=[{instancePath:t+"/name",schemaPath:"#/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=p===e}else var i=!0;if(i){if(s.dependents!==void 0){let p=s.dependents;const o=e;if(e===o)if(Array.isArray(p)){var m=!0;const v=p.length;for(let y=0;y<v;y++){let h=p[y];const b=e;if(e===b)if(h&&typeof h=="object"&&!Array.isArray(h)){let N;if(h.name===void 0&&(N="name"))return z.errors=[{instancePath:t+"/dependents/"+y,schemaPath:"#/properties/dependents/items/required",keyword:"required",params:{missingProperty:N},message:"must have required property '"+N+"'"}],!1;{const H=e;for(const $ in h)if($!=="name"){return z.errors=[{instancePath:t+"/dependents/"+y,schemaPath:"#/properties/dependents/items/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:$},message:"must NOT have additional properties"}],!1;break}if(H===e&&h.name!==void 0&&typeof h.name!="string")return z.errors=[{instancePath:t+"/dependents/"+y+"/name",schemaPath:"#/properties/dependents/items/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1}}else return z.errors=[{instancePath:t+"/dependents/"+y,schemaPath:"#/properties/dependents/items/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var m=b===e;if(!m)break}}else return z.errors=[{instancePath:t+"/dependents",schemaPath:"#/properties/dependents/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=o===e}else var i=!0;if(i){if(s.dependencies!==void 0){let p=s.dependencies;const o=e;if(e===o)if(Array.isArray(p)){var a=!0;const v=p.length;for(let y=0;y<v;y++){let h=p[y];const b=e;if(e===b)if(h&&typeof h=="object"&&!Array.isArray(h)){let N;if(h.name===void 0&&(N="name")||h.valid===void 0&&(N="valid")||h.circular===void 0&&(N="circular"))return z.errors=[{instancePath:t+"/dependencies/"+y,schemaPath:"#/properties/dependencies/items/required",keyword:"required",params:{missingProperty:N},message:"must have required property '"+N+"'"}],!1;{const H=e;for(const $ in h)if(!($==="name"||$==="instability"||$==="valid"||$==="circular"||$==="cycle"||$==="rules")){return z.errors=[{instancePath:t+"/dependencies/"+y,schemaPath:"#/properties/dependencies/items/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:$},message:"must NOT have additional properties"}],!1;break}if(H===e){if(h.name!==void 0){const $=e;if(typeof h.name!="string")return z.errors=[{instancePath:t+"/dependencies/"+y+"/name",schemaPath:"#/properties/dependencies/items/properties/name/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var n=$===e}else var n=!0;if(n){if(h.instability!==void 0){let $=h.instability;const A=e;if(!(typeof $=="number"&&isFinite($)))return z.errors=[{instancePath:t+"/dependencies/"+y+"/instability",schemaPath:"#/properties/dependencies/items/properties/instability/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var n=A===e}else var n=!0;if(n){if(h.valid!==void 0){const $=e;if(typeof h.valid!="boolean")return z.errors=[{instancePath:t+"/dependencies/"+y+"/valid",schemaPath:"#/properties/dependencies/items/properties/valid/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var n=$===e}else var n=!0;if(n){if(h.circular!==void 0){const $=e;if(typeof h.circular!="boolean")return z.errors=[{instancePath:t+"/dependencies/"+y+"/circular",schemaPath:"#/properties/dependencies/items/properties/circular/type",keyword:"type",params:{type:"boolean"},message:"must be boolean"}],!1;var n=$===e}else var n=!0;if(n){if(h.cycle!==void 0){let $=h.cycle;const A=e;if(e===A)if(Array.isArray($)){var u=!0;const q=$.length;for(let d=0;d<q;d++){const _=e;G($[d],{instancePath:t+"/dependencies/"+y+"/cycle/"+d,parentData:$,parentDataProperty:d,rootData:O})||(r=r===null?G.errors:r.concat(G.errors),e=r.length);var u=_===e;if(!u)break}}else return z.errors=[{instancePath:t+"/dependencies/"+y+"/cycle",schemaPath:"#/properties/dependencies/items/properties/cycle/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var n=A===e}else var n=!0;if(n)if(h.rules!==void 0){let $=h.rules;const A=e;if(e===A)if(Array.isArray($)){var T=!0;const q=$.length;for(let d=0;d<q;d++){const _=e;Q($[d],{instancePath:t+"/dependencies/"+y+"/rules/"+d,parentData:$,parentDataProperty:d,rootData:O})||(r=r===null?Q.errors:r.concat(Q.errors),e=r.length);var T=_===e;if(!T)break}}else return z.errors=[{instancePath:t+"/dependencies/"+y+"/rules",schemaPath:"#/properties/dependencies/items/properties/rules/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var n=A===e}else var n=!0}}}}}}}else return z.errors=[{instancePath:t+"/dependencies/"+y,schemaPath:"#/properties/dependencies/items/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var a=b===e;if(!a)break}}else return z.errors=[{instancePath:t+"/dependencies",schemaPath:"#/properties/dependencies/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=o===e}else var i=!0;if(i){if(s.moduleCount!==void 0){let p=s.moduleCount;const o=e;if(!(typeof p=="number"&&isFinite(p)))return z.errors=[{instancePath:t+"/moduleCount",schemaPath:"#/properties/moduleCount/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var i=o===e}else var i=!0;if(i){if(s.afferentCouplings!==void 0){let p=s.afferentCouplings;const o=e;if(!(typeof p=="number"&&isFinite(p)))return z.errors=[{instancePath:t+"/afferentCouplings",schemaPath:"#/properties/afferentCouplings/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var i=o===e}else var i=!0;if(i){if(s.efferentCouplings!==void 0){let p=s.efferentCouplings;const o=e;if(!(typeof p=="number"&&isFinite(p)))return z.errors=[{instancePath:t+"/efferentCouplings",schemaPath:"#/properties/efferentCouplings/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var i=o===e}else var i=!0;if(i){if(s.instability!==void 0){let p=s.instability;const o=e;if(!(typeof p=="number"&&isFinite(p)))return z.errors=[{instancePath:t+"/instability",schemaPath:"#/properties/instability/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var i=o===e}else var i=!0;if(i)if(s.experimentalStats!==void 0){let p=s.experimentalStats;const o=e;if(e===e)if(p&&typeof p=="object"&&!Array.isArray(p)){let y;if(p.size===void 0&&(y="size")||p.topLevelStatementCount===void 0&&(y="topLevelStatementCount"))return z.errors=[{instancePath:t+"/experimentalStats",schemaPath:"#/definitions/ExperimentalStatsType/required",keyword:"required",params:{missingProperty:y},message:"must have required property '"+y+"'"}],!1;{const h=e;for(const b in p)if(!(b==="topLevelStatementCount"||b==="size")){return z.errors=[{instancePath:t+"/experimentalStats",schemaPath:"#/definitions/ExperimentalStatsType/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:b},message:"must NOT have additional properties"}],!1;break}if(h===e){if(p.topLevelStatementCount!==void 0){let b=p.topLevelStatementCount;const x=e;if(!(typeof b=="number"&&isFinite(b)))return z.errors=[{instancePath:t+"/experimentalStats/topLevelStatementCount",schemaPath:"#/definitions/ExperimentalStatsType/properties/topLevelStatementCount/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var l=x===e}else var l=!0;if(l)if(p.size!==void 0){let b=p.size;const x=e;if(!(typeof b=="number"&&isFinite(b)))return z.errors=[{instancePath:t+"/experimentalStats/size",schemaPath:"#/definitions/ExperimentalStatsType/properties/size/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1;var l=x===e}else var l=!0}}}else return z.errors=[{instancePath:t+"/experimentalStats",schemaPath:"#/definitions/ExperimentalStatsType/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var i=o===e}else var i=!0}}}}}}}}}else return z.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;return z.errors=r,e===0}function $e(s,{instancePath:t="",parentData:C,parentDataProperty:I,rootData:O=s}={}){let r=null,e=0;if(e===0)if(Array.isArray(s)){var i=!0;const m=s.length;for(let a=0;a<m;a++){const n=e;z(s[a],{instancePath:t+"/"+a,parentData:s,parentDataProperty:a,rootData:O})||(r=r===null?z.errors:r.concat(z.errors),e=r.length);var i=n===e;if(!i)break}}else return $e.errors=[{instancePath:t,schemaPath:"#/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;return $e.errors=r,e===0}const Je={type:"object",required:["violations","error","warn","info","totalCruised","optionsUsed"],additionalProperties:!1,properties:{violations:{$ref:"#/definitions/ViolationsType"},error:{type:"number"},warn:{type:"number"},info:{type:"number"},ignore:{type:"number"},totalCruised:{type:"number"},totalDependenciesCruised:{type:"number"},ruleSetUsed:{$ref:"#/definitions/RuleSetType"},optionsUsed:{$ref:"#/definitions/OptionsUsedType"}}};const Ge={type:"object",required:["from","to","rule"],additionalProperties:!1,properties:{from:{type:"string"},to:{type:"string"},unresolvedTo:{type:"string"},dependencyTypes:{type:"array",items:{$ref:"#/definitions/DependencyTypeType"}},type:{$ref:"#/definitions/ViolationTypeType"},rule:{$ref:"#/definitions/RuleSummaryType"},cycle:{type:"array",items:{$ref:"#/definitions/MiniDependency"}},via:{type:"array",items:{$ref:"#/definitions/MiniDependency"}},metrics:{type:"object",required:["from","to"],additionalProperties:!1,properties:{from:{type:"object",required:["instability"],additionalProperties:!1,properties:{instability:{type:"number"}}},to:{type:"object",required:["instability"],additionalProperties:!1,properties:{instability:{type:"number"}}}}},comment:{type:"string"}}},Ke={type:"string",enum:["dependency","module","reachability","cycle","instability","folder"]};function J(s,{instancePath:t="",parentData:C,parentDataProperty:I,rootData:O=s}={}){let r=null,e=0;if(e===0)if(s&&typeof s=="object"&&!Array.isArray(s)){let T;if(s.from===void 0&&(T="from")||s.to===void 0&&(T="to")||s.rule===void 0&&(T="rule"))return J.errors=[{instancePath:t,schemaPath:"#/required",keyword:"required",params:{missingProperty:T},message:"must have required property '"+T+"'"}],!1;{const l=e;for(const g in s)if(!Ae.call(Ge.properties,g)){return J.errors=[{instancePath:t,schemaPath:"#/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:g},message:"must NOT have additional properties"}],!1;break}if(l===e){if(s.from!==void 0){const g=e;if(typeof s.from!="string")return J.errors=[{instancePath:t+"/from",schemaPath:"#/properties/from/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=g===e}else var i=!0;if(i){if(s.to!==void 0){const g=e;if(typeof s.to!="string")return J.errors=[{instancePath:t+"/to",schemaPath:"#/properties/to/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=g===e}else var i=!0;if(i){if(s.unresolvedTo!==void 0){const g=e;if(typeof s.unresolvedTo!="string")return J.errors=[{instancePath:t+"/unresolvedTo",schemaPath:"#/properties/unresolvedTo/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;var i=g===e}else var i=!0;if(i){if(s.dependencyTypes!==void 0){let g=s.dependencyTypes;const f=e;if(e===f)if(Array.isArray(g)){var m=!0;const o=g.length;for(let c=0;c<o;c++){let v=g[c];const y=e;if(typeof v!="string")return J.errors=[{instancePath:t+"/dependencyTypes/"+c,schemaPath:"#/definitions/DependencyTypeType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;if(!(v==="aliased-subpath-import"||v==="aliased-tsconfig-base-url"||v==="aliased-tsconfig-paths"||v==="aliased-tsconfig"||v==="aliased-webpack"||v==="aliased-workspace"||v==="aliased"||v==="amd-define"||v==="amd-require"||v==="amd-exotic-require"||v==="core"||v==="deprecated"||v==="dynamic-import"||v==="exotic-require"||v==="export"||v==="import-equals"||v==="import"||v==="jsdoc"||v==="jsdoc-bracket-import"||v==="jsdoc-import-tag"||v==="local"||v==="localmodule"||v==="npm-bundled"||v==="npm-dev"||v==="npm-no-pkg"||v==="npm-optional"||v==="npm-peer"||v==="npm-unknown"||v==="npm"||v==="pre-compilation-only"||v==="process-get-builtin-module"||v==="require"||v==="triple-slash-amd-dependency"||v==="triple-slash-directive"||v==="triple-slash-file-reference"||v==="triple-slash-type-reference"||v==="type-import"||v==="type-only"||v==="undetermined"||v==="unknown"))return J.errors=[{instancePath:t+"/dependencyTypes/"+c,schemaPath:"#/definitions/DependencyTypeType/enum",keyword:"enum",params:{allowedValues:be.enum},message:"must be equal to one of the allowed values"}],!1;var m=y===e;if(!m)break}}else return J.errors=[{instancePath:t+"/dependencyTypes",schemaPath:"#/properties/dependencyTypes/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=f===e}else var i=!0;if(i){if(s.type!==void 0){let g=s.type;const f=e;if(typeof g!="string")return J.errors=[{instancePath:t+"/type",schemaPath:"#/definitions/ViolationTypeType/type",keyword:"type",params:{type:"string"},message:"must be string"}],!1;if(!(g==="dependency"||g==="module"||g==="reachability"||g==="cycle"||g==="instability"||g==="folder"))return J.errors=[{instancePath:t+"/type",schemaPath:"#/definitions/ViolationTypeType/enum",keyword:"enum",params:{allowedValues:Ke.enum},message:"must be equal to one of the allowed values"}],!1;var i=f===e}else var i=!0;if(i){if(s.rule!==void 0){const g=e;Q(s.rule,{instancePath:t+"/rule",parentData:s,parentDataProperty:"rule",rootData:O})||(r=r===null?Q.errors:r.concat(Q.errors),e=r.length);var i=g===e}else var i=!0;if(i){if(s.cycle!==void 0){let g=s.cycle;const f=e;if(e===f)if(Array.isArray(g)){var a=!0;const o=g.length;for(let c=0;c<o;c++){const v=e;G(g[c],{instancePath:t+"/cycle/"+c,parentData:g,parentDataProperty:c,rootData:O})||(r=r===null?G.errors:r.concat(G.errors),e=r.length);var a=v===e;if(!a)break}}else return J.errors=[{instancePath:t+"/cycle",schemaPath:"#/properties/cycle/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=f===e}else var i=!0;if(i){if(s.via!==void 0){let g=s.via;const f=e;if(e===f)if(Array.isArray(g)){var n=!0;const o=g.length;for(let c=0;c<o;c++){const v=e;G(g[c],{instancePath:t+"/via/"+c,parentData:g,parentDataProperty:c,rootData:O})||(r=r===null?G.errors:r.concat(G.errors),e=r.length);var n=v===e;if(!n)break}}else return J.errors=[{instancePath:t+"/via",schemaPath:"#/properties/via/type",keyword:"type",params:{type:"array"},message:"must be array"}],!1;var i=f===e}else var i=!0;if(i){if(s.metrics!==void 0){let g=s.metrics;const f=e;if(e===f)if(g&&typeof g=="object"&&!Array.isArray(g)){let o;if(g.from===void 0&&(o="from")||g.to===void 0&&(o="to"))return J.errors=[{instancePath:t+"/metrics",schemaPath:"#/properties/metrics/required",keyword:"required",params:{missingProperty:o},message:"must have required property '"+o+"'"}],!1;{const c=e;for(const v in g)if(!(v==="from"||v==="to")){return J.errors=[{instancePath:t+"/metrics",schemaPath:"#/properties/metrics/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:v},message:"must NOT have additional properties"}],!1;break}if(c===e){if(g.from!==void 0){let v=g.from;const y=e;if(e===y)if(v&&typeof v=="object"&&!Array.isArray(v)){let h;if(v.instability===void 0&&(h="instability"))return J.errors=[{instancePath:t+"/metrics/from",schemaPath:"#/properties/metrics/properties/from/required",keyword:"required",params:{missingProperty:h},message:"must have required property '"+h+"'"}],!1;{const b=e;for(const x in v)if(x!=="instability"){return J.errors=[{instancePath:t+"/metrics/from",schemaPath:"#/properties/metrics/properties/from/additionalProperties",keyword:"additionalProperties",params:{additionalProperty:x},message:"must NOT have additional properties"}],!1;break}if(b===e&&v.instability!==void 0){let x=v.instability;if(!(typeof x=="number"&&isFinite(x)))return J.errors=[{instancePath:t+"/metrics/from/instability",schemaPath:"#/properties/metrics/properties/from/properties/instability/type",keyword:"type",params:{type:"number"},message:"must be number"}],!1}}}else return J.errors=[{instancePath:t+"/metrics/from",schemaPath:"#/properties/metrics/properties/from/type",keyword:"type",params:{type:"object"},message:"must be object"}],!1;var u=y===e}else var u=!0;if(u)if(g.to!==void 0){let v=g.to;const y=e;if(e===y)if(v&&typeof v=="object"&&!Array.isArray(v)){let b;if(v.instability===void 0&&(b="instability"))return J.errors=[{instancePath:t+"/metrics/to",schemaPath:"#/properties/metrics/properties/to/required",keyword:"required",params:{missingProperty:b},m