diff --git a/.c8rc.json b/.c8rc.json index 13d9cbebf..bb36883dc 100644 --- a/.c8rc.json +++ b/.c8rc.json @@ -1,7 +1,7 @@ { "checkCoverage": true, "statements": 99.89, - "branches": 98.76, + "branches": 98.75, "functions": 100, "lines": 99.89, "exclude": [ diff --git a/doc/rules-reference.md b/doc/rules-reference.md index c1bc35900..3c1295fbe 100644 --- a/doc/rules-reference.md +++ b/doc/rules-reference.md @@ -41,7 +41,7 @@ - [`dependencyTypes` and `dependencyTypesNot`](#dependencytypes-and-dependencytypesnot) - [`dynamic`](#dynamic) - [`moreThanOneDependencyType`](#more-than-one-dependencytype-per-dependency-morethanonedependencytype) - - [`exoticRequire` and `exoticRequireNot`](#exoticallyrequired-exoticrequire-and-exoticrequirenot) + - [`exoticallyRequired`, `exoticRequire` and `exoticRequireNot`](#exoticallyrequired-exoticrequire-and-exoticrequirenot) - [`preCompilationOnly`](#precompilationonly) - [`moreUnstable`](#moreunstable) 4. [Configurations in JavaScript](#configurations-in-javascript) @@ -916,31 +916,53 @@ will ignore them in the evaluation of that rule. #### OK - `unknown`, `npm-unknown`, `undetermined` - I'm officially weirded out - what's that about? -This is a list of dependency types dependency-cruiser currently detects. - -| dependency type | meaning | example | -| ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | ---------------------------- | -| local | a module in your own ('local') package | "./klont" | -| localmodule | a module in your own ('local') package, but which was in the `resolve.modules` attribute of the webpack config you passed | "shared/stuff.ts" | -| npm | it's a module in package.json's `dependencies` | "lodash" | -| npm-dev | it's a module in package.json's `devDependencies` | "chai" | -| npm-optional | it's a module in package.json's `optionalDependencies` | "livescript" | -| npm-peer | it's a module in package.json's `peerDependencies` - note: deprecated in npm 3, but later on revived. | "thing-i-am-a-plugin-for" | -| npm-bundled | it's a module that occurs in package.json's `bundle(d)Dependencies` array | "iwillgetbundled" | -| npm-no-pkg | it's an npm module - but it's nowhere in your package.json | "forgetmenot" | -| npm-unknown | it's an npm module - but there is no (parseable/ valid) package.json in your package | | -| deprecated | it's an npm module, but the version you're using or the module itself is officially deprecated | "some-deprecated-package" | -| core | it's a (nodejs) core module. B.t.w. you can [influence](./options-reference.md#builtinmodules-influencing-what-to-consider-built-in--core-modules) what to consider a core module if | "fs", "node:test" | -| aliased | the module was imported via an alias - always occurs alongside one of 'aliased-\*' dependency types below _and_ alongside the dependency type of the dependency it's aliased to (so: local, npm, core ,...) | "~/hello.ts" | -| aliased-subpath-import | the module was imported via a [subpath import](https://nodejs.org/api/packages.html#subpath-imports) | "#thing/hello.mjs" | -| aliased-tsconfig | the module was imported via a typescript compilerOptions.paths or compilerOptions.baseUrl setting in tsconfig. Always occurs alongside one of the 'aliased-tsconfig-\*' types below | "@thing/hello" | -| aliased-tsconfig-base-url | the module was imported via a typescript [compilerOptions.baseUrl setting in tsconfig](https://www.typescriptlang.org/tsconfig#baseUrl) | "libs/utensils/src/hello.js" | -| aliased-tsconfig-paths | the module was imported via a typescript [compilerOptions.paths setting in tsconfig](https://www.typescriptlang.org/tsconfig#paths) | "@thing/hello" | -| aliased-webpack | the module was imported via a [webpack resolve alias](https://webpack.js.org/configuration/resolve/#resolvealias) | "Utilities" | -| aliased-workspace | the module was imported via a [workspace](https://docs.npmjs.com/cli/v10/configuring-npm/package-json#workspaces) | "local-workspace-package" | -| unknown | it's unknown what kind of dependency type this is - probably because the module could not be resolved in the first place | "loodash" | -| undetermined | the dependency fell through all detection holes. This could happen with amd dependencies - which have a whole Jurassic park of ways to define where to resolve modules to | "veloci!./raptor" | -| type-only | the module was imported as 'type only' (e.g. `import type { IThing } from "./things";`) - only available for TypeScript sources, only for tsPreCompilationDeps !== false. Will appear alongside other types. | | +This is a list of the main dependency types dependency-cruiser currently detects. + +| dependency type | meaning | example | +| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------- | +| local | a module in your own ('local') package | "./klont" | +| localmodule | a module in your own ('local') package, but which was in the `resolve.modules` attribute of the webpack config you passed | "shared/stuff.ts" | +| npm | it's a module in package.json's `dependencies` | "lodash" | +| npm-dev | it's a module in package.json's `devDependencies` | "chai" | +| npm-optional | it's a module in package.json's `optionalDependencies` | "livescript" | +| npm-peer | it's a module in package.json's `peerDependencies` - note: deprecated in npm 3, but later on revived. | "thing-i-am-a-plugin-for" | +| npm-bundled | it's a module that occurs in package.json's `bundle(d)Dependencies` array | "iwillgetbundled" | +| npm-no-pkg | it's an npm module - but it's nowhere in your package.json | "forgetmenot" | +| npm-unknown | it's an npm module - but there is no (parseable/ valid) package.json in your package | | +| deprecated | it's an npm module, but the version you're using or the module itself is officially deprecated | "some-deprecated-package" | +| core | it's a (nodejs) core module. B.t.w. you can [influence](./options-reference.md#builtinmodules-influencing-what-to-consider-built-in--core-modules) this | "fs", "node:test" | +| unknown | it's unknown what kind of dependency type this is - probably because the module could not be resolved in the first place | "loodash" | +| undetermined | the dependency fell through all detection holes. | "veloci!./raptor" | + +These are types that will typically occur alongside the ones above, telling a little bit more on how +the dependency was declared. One or more of these can occur at the same time. E.g. if you import a +dependency which resolves to a base url in a tsconfig.json you'll see `import`, `aliased` as well as +`aliased-tsconfig` and `aliased-tsconfig-base-url`. + +| dependency type | meaning the module was imported ... | example | +| --------------------------- | ---------------------------------------------------------------------------------------------------------------------- | --------------------------------------------------------------------------- | +| aliased | via an alias of some sort (e.g. tsconfig paths, subpath imports, npm workspace or webpack aliases) | "~/hello.ts" | +| aliased-subpath-import | via a [subpath import](https://nodejs.org/api/packages.html#subpath-imports) | "#thing/hello.mjs" | +| aliased-tsconfig | via a typescript compilerOptions.paths or compilerOptions.baseUrl setting in tsconfig. | "@thing/hello" | +| aliased-tsconfig-base-url | via a typescript [compilerOptions.baseUrl setting in tsconfig](https://www.typescriptlang.org/tsconfig#baseUrl) | "libs/utensils/src/hello.js" | +| aliased-tsconfig-paths | via a typescript [compilerOptions.paths setting in tsconfig](https://www.typescriptlang.org/tsconfig#paths) | "@thing/hello" | +| aliased-webpack | via a [webpack resolve alias](https://webpack.js.org/configuration/resolve/#resolvealias) | "Utilities" | +| aliased-workspace | via a [workspace](https://docs.npmjs.com/cli/v10/configuring-npm/package-json#workspaces) | "local-workspace-package" | +| amd-define | with an AMD `define` wrapper (popularized by requirejs) | `define(["./thing"], function(thing){ /* do stuff */ })` | +| amd-require | with a require statement within an AMD module | `define(function(require, exports, module){ var one = require('./thing')})` | +| amd-exotic-require | with a require statement within an AMD module (but with the first parameter baring an insensible non-standard name) | `define(function(want, exports, module){ var one = want('./thing')})` | +| type-only | as 'type only' - only available for TypeScript sources, only for tsPreCompilationDeps !== false. | `import type { IThing } from "./things"` | +| export | implicitly via a module export | `export { thing } from "./things"` | +| import | with a 'regular' ES import | `import { thing } from "./things` | +| dynamic-import | with a dynamic import statement | `const { thing } = await import("./things")` | +| import-equals | with an 'import equals' statement | `import fs = require("fs")` | +| type-import | as part of a type declaration | `const lAThing: import('./things').IThing = {}` | +| require | with a commonjs 'require' statement | `const memoize = require("lodash/memoize")` | +| exotic-require | with a statement that isn't 'require' see [exoticallyRequired](#exoticallyrequired-exoticrequire-and-exoticrequirenot) | `const { thing } = want("./thing")` | +| triple-slash-directive | with a triple slash directive (oldskool TypeScript) | | +| triple-slash-file-reference | with a triple slash directive, specifically importing another module | `/// ` | +| triple-slash-type-reference | with a triple slash directive, specifically importing types | `/// ` | +| triple-slash-amd-dependency | with a triple slash directive, specifically declaring an AMD dependency | `/// ` | ### `dynamic` diff --git a/src/extract/ast-extractors/extract-amd-deps.mjs b/src/extract/ast-extractors/extract-amd-deps.mjs index e10a1f23f..02ebe1064 100644 --- a/src/extract/ast-extractors/extract-amd-deps.mjs +++ b/src/extract/ast-extractors/extract-amd-deps.mjs @@ -14,9 +14,10 @@ function extractRegularAMDDependencies(pNode, pDependencies) { moduleSystem: "amd", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["amd-define"], }); } - }) + }), ); } } @@ -30,16 +31,16 @@ function extractCommonJSWrappers(pNode, pDependencies, pExoticRequireStrings) { pArgument.params.some( (pParameter) => pParameter.name === "require" || - pExoticRequireStrings.includes(pParameter.name) - ) + pExoticRequireStrings.includes(pParameter.name), + ), ) .forEach((pFunction) => extractCommonJSDependencies( pFunction.body, pDependencies, "amd", - pExoticRequireStrings - ) + pExoticRequireStrings, + ), ); } } @@ -47,7 +48,7 @@ function extractCommonJSWrappers(pNode, pDependencies, pExoticRequireStrings) { export default function extractAMDDependencies( pAST, pDependencies, - pExoticRequireStrings + pExoticRequireStrings, ) { walk_simple( pAST, @@ -67,6 +68,6 @@ export default function extractAMDDependencies( }, }, // see https://github.com/acornjs/acorn/issues/746 - walk_base + walk_base, ); } diff --git a/src/extract/ast-extractors/extract-cjs-deps.mjs b/src/extract/ast-extractors/extract-cjs-deps.mjs index 387b94b6a..0501a508f 100644 --- a/src/extract/ast-extractors/extract-cjs-deps.mjs +++ b/src/extract/ast-extractors/extract-cjs-deps.mjs @@ -13,10 +13,17 @@ function pryStringsFromArguments(pArguments) { return lReturnValue; } +function getRequireTypes(pModuleSystem) { + return pModuleSystem === "amd" ? ["amd-require"] : ["require"]; +} +function getExoticRequireTypes(pModuleSystem) { + return pModuleSystem === "amd" ? ["amd-exotic-require"] : ["exotic-require"]; +} + function pushRequireCallsToDependencies( pDependencies, pModuleSystem, - pRequireStrings + pRequireStrings, ) { return (pNode) => { for (let lName of pRequireStrings) { @@ -28,8 +35,15 @@ function pushRequireCallsToDependencies( moduleSystem: pModuleSystem, dynamic: false, ...(lName === "require" - ? { exoticallyRequired: false } - : { exoticallyRequired: true, exoticRequire: lName }), + ? { + exoticallyRequired: false, + dependencyTypes: getRequireTypes(pModuleSystem), + } + : { + exoticallyRequired: true, + exoticRequire: lName, + dependencyTypes: getExoticRequireTypes(pModuleSystem), + }), }); } } @@ -41,7 +55,7 @@ export default function extractCommonJSDependencies( pAST, pDependencies, pModuleSystem, - pExoticRequireStrings + pExoticRequireStrings, ) { // var/const lalala = require('./lalala'); // require('./lalala'); @@ -58,10 +72,10 @@ export default function extractCommonJSDependencies( CallExpression: pushRequireCallsToDependencies( pDependencies, pModuleSystem, - lRequireStrings + lRequireStrings, ), }, // see https://github.com/acornjs/acorn/issues/746 - walk_base + walk_base, ); } diff --git a/src/extract/ast-extractors/extract-es6-deps.mjs b/src/extract/ast-extractors/extract-es6-deps.mjs index 8dc4b44ea..016a22b2b 100644 --- a/src/extract/ast-extractors/extract-es6-deps.mjs +++ b/src/extract/ast-extractors/extract-es6-deps.mjs @@ -12,6 +12,7 @@ function pushImportNodeValue(pDependencies) { moduleSystem: "es6", dynamic: true, exoticallyRequired: false, + dependencyTypes: ["dynamic-import"], }); } else if (estreeHelpers.isPlaceholderlessTemplateLiteral(pNode.source)) { pDependencies.push({ @@ -19,19 +20,32 @@ function pushImportNodeValue(pDependencies) { moduleSystem: "es6", dynamic: true, exoticallyRequired: false, + dependencyTypes: ["dynamic-import"], }); } }; } export default function extractES6Dependencies(pAST, pDependencies) { - function pushSourceValue(pNode) { + function pushImportSourceValue(pNode) { if (pNode.source && pNode.source.value) { pDependencies.push({ module: pNode.source.value, moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], + }); + } + } + function pushExportSourceValue(pNode) { + if (pNode.source && pNode.source.value) { + pDependencies.push({ + module: pNode.source.value, + moduleSystem: "es6", + dynamic: false, + exoticallyRequired: false, + dependencyTypes: ["export"], }); } } @@ -39,12 +53,12 @@ export default function extractES6Dependencies(pAST, pDependencies) { walk_simple( pAST, { - ImportDeclaration: pushSourceValue, + ImportDeclaration: pushImportSourceValue, ImportExpression: pushImportNodeValue(pDependencies), - ExportAllDeclaration: pushSourceValue, - ExportNamedDeclaration: pushSourceValue, + ExportAllDeclaration: pushExportSourceValue, + ExportNamedDeclaration: pushExportSourceValue, }, // see https://github.com/acornjs/acorn/issues/746 - walk_base + walk_base, ); } diff --git a/src/extract/ast-extractors/extract-typescript-deps.mjs b/src/extract/ast-extractors/extract-typescript-deps.mjs index f768bbc19..10c0c0df3 100644 --- a/src/extract/ast-extractors/extract-typescript-deps.mjs +++ b/src/extract/ast-extractors/extract-typescript-deps.mjs @@ -1,3 +1,4 @@ +/* eslint-disable max-lines */ /* eslint-disable no-inline-comments */ import tryImport from "semver-try-require"; import meta from "#meta.js"; @@ -43,28 +44,50 @@ function isTypeOnlyExport(pStatement) { */ /** - * Get all import and export statements from the top level AST node + * Get all import statements from the top level AST node * * @param {import("typescript").Node} pAST - the (top-level in this case) AST node * @returns {{module: string; moduleSystem: string; exoticallyRequired: boolean; dependencyTypes?: string[];}[]} - - * all import and export statements in the - * (top level) AST node + * all import statements in the (top level) AST node + */ +function extractImports(pAST) { + return pAST.statements + .filter( + (pStatement) => + typescript.SyntaxKind[pStatement.kind] === "ImportDeclaration" && + Boolean(pStatement.moduleSpecifier), + ) + .map((pStatement) => ({ + module: pStatement.moduleSpecifier.text, + moduleSystem: "es6", + exoticallyRequired: false, + ...(isTypeOnlyImport(pStatement) + ? { dependencyTypes: ["type-only", "import"] } + : { dependencyTypes: ["import"] }), + })); +} + +/** + * Get all export statements from the top level AST node + * + * @param {import("typescript").Node} pAST - the (top-level in this case) AST node + * @returns {{module: string; moduleSystem: string; exoticallyRequired: boolean; dependencyTypes?: string[];}[]} - + * all export statements in the (top level) AST node */ -function extractImportsAndExports(pAST) { +function extractExports(pAST) { return pAST.statements .filter( (pStatement) => - (typescript.SyntaxKind[pStatement.kind] === "ImportDeclaration" || - typescript.SyntaxKind[pStatement.kind] === "ExportDeclaration") && + typescript.SyntaxKind[pStatement.kind] === "ExportDeclaration" && Boolean(pStatement.moduleSpecifier), ) .map((pStatement) => ({ module: pStatement.moduleSpecifier.text, moduleSystem: "es6", exoticallyRequired: false, - ...(isTypeOnlyImport(pStatement) || isTypeOnlyExport(pStatement) - ? { dependencyTypes: ["type-only"] } - : {}), + ...(isTypeOnlyExport(pStatement) + ? { dependencyTypes: ["type-only", "export"] } + : { dependencyTypes: ["export"] }), })); } @@ -92,6 +115,7 @@ function extractImportEquals(pAST) { module: pStatement.moduleReference.expression.text, moduleSystem: "cjs", exoticallyRequired: false, + dependencyTypes: ["import-equals"], })); } @@ -108,12 +132,20 @@ function extractTripleSlashDirectives(pAST) { module: pReference.fileName, moduleSystem: "tsd", exoticallyRequired: false, + dependencyTypes: [ + "triple-slash-directive", + "triple-slash-file-reference", + ], })) .concat( pAST.typeReferenceDirectives.map((pReference) => ({ module: pReference.fileName, moduleSystem: "tsd", exoticallyRequired: false, + dependencyTypes: [ + "triple-slash-directive", + "triple-slash-type-reference", + ], })), ) .concat( @@ -121,6 +153,10 @@ function extractTripleSlashDirectives(pAST) { module: pReference.path, moduleSystem: "tsd", exoticallyRequired: false, + dependencyTypes: [ + "triple-slash-directive", + "triple-slash-amd-dependency", + ], })), ); } @@ -224,6 +260,7 @@ function walk(pResult, pExoticRequireStrings) { module: pASTNode.arguments[0].text, moduleSystem: "cjs", exoticallyRequired: false, + dependencyTypes: ["require"], }); } @@ -235,6 +272,7 @@ function walk(pResult, pExoticRequireStrings) { moduleSystem: "cjs", exoticallyRequired: true, exoticRequire: pExoticRequireString, + dependencyTypes: ["exotic-require"], }); } }); @@ -246,6 +284,7 @@ function walk(pResult, pExoticRequireStrings) { moduleSystem: "es6", dynamic: true, exoticallyRequired: false, + dependencyTypes: ["dynamic-import"], }); } @@ -256,6 +295,7 @@ function walk(pResult, pExoticRequireStrings) { module: pASTNode.argument.literal.text, moduleSystem: "es6", exoticallyRequired: false, + dependencyTypes: ["type-import"], }); } typescript.forEachChild(pASTNode, walk(pResult, pExoticRequireStrings)); @@ -287,7 +327,8 @@ export default function extractTypeScriptDependencies( pExoticRequireStrings, ) { return Boolean(typescript) - ? extractImportsAndExports(pTypeScriptAST) + ? extractImports(pTypeScriptAST) + .concat(extractExports(pTypeScriptAST)) .concat(extractImportEquals(pTypeScriptAST)) .concat(extractTripleSlashDirectives(pTypeScriptAST)) .concat( diff --git a/src/extract/ast-extractors/swc-dependency-visitor.mjs b/src/extract/ast-extractors/swc-dependency-visitor.mjs index 11d0b39b6..c0c73ea5e 100644 --- a/src/extract/ast-extractors/swc-dependency-visitor.mjs +++ b/src/extract/ast-extractors/swc-dependency-visitor.mjs @@ -75,6 +75,7 @@ function extractExoticMemberCallExpression(pNode, pExoticRequireStrings) { exoticallyRequired: true, exoticRequire: pThing.string, dynamic: false, + dependencyTypes: ["exotic-require"], }); } return pAll; @@ -120,17 +121,30 @@ export default Visitor this.lExoticRequireStrings = pExoticRequireStrings; } - pushImportExportSource(pNode) { + pushExportSource(pNode) { if (pNode.source) { this.lResult.push({ module: pNode.source.value, moduleSystem: "es6", exoticallyRequired: false, + dependencyTypes: ["export"], }); } } + + pushImportSource(pNode) { + if (pNode.source) { + this.lResult.push({ + module: pNode.source.value, + moduleSystem: "es6", + exoticallyRequired: false, + dependencyTypes: ["import"], + }); + } + } + visitImportDeclaration(pNode) { - this.pushImportExportSource(pNode); + this.pushImportSource(pNode); return super.visitImportDeclaration(pNode); } @@ -140,6 +154,7 @@ export default Visitor module: pNode.moduleRef.expression.value, moduleSystem: "cjs", exoticallyRequired: false, + dependencyTypes: ["import-equals"], }); } return super.visitTsImportEqualsDeclaration(pNode); @@ -149,7 +164,7 @@ export default Visitor // To anticipate that (and to remain backward compatible when that happens) // also include the same method, but with the correct spelling. visitExportAllDeclration(pNode) { - this.pushImportExportSource(pNode); + this.pushExportSource(pNode); /* c8 ignore start */ // @ts-expect-error see above if (super.visitExportAllDeclration) { @@ -169,7 +184,7 @@ export default Visitor // same spelling error as the above - same solution visitExportNamedDeclration(pNode) { - this.pushImportExportSource(pNode); + this.pushExportSource(pNode); /* c8 ignore start */ // @ts-expect-error see above if (super.visitExportNamedDeclration) { @@ -195,14 +210,23 @@ export default Visitor module: pryStringsFromArguments(pNode.arguments), ...(isImportCallExpression(pNode) - ? { moduleSystem: "es6", dynamic: true } - : { moduleSystem: "cjs", dynamic: false }), + ? { + moduleSystem: "es6", + dynamic: true, + dependencyTypes: ["dynamic-import"], + } + : { + moduleSystem: "cjs", + dynamic: false, + dependencyTypes: ["require"], + }), ...(isNonExoticallyRequiredExpression(pNode) ? { exoticallyRequired: false } : { exoticallyRequired: true, exoticRequire: pNode.callee.value, + dependencyTypes: ["exotic-require"], }), }); } @@ -235,6 +259,7 @@ export default Visitor module: pNode.typeAnnotation.argument.value, moduleSystem: "es6", exoticallyRequired: false, + dependencyTypes: ["type-import"], }); return super.visitTsTypeAnnotation(pNode); } diff --git a/src/extract/get-dependencies.mjs b/src/extract/get-dependencies.mjs index b9312501d..8c262602a 100644 --- a/src/extract/get-dependencies.mjs +++ b/src/extract/get-dependencies.mjs @@ -191,6 +191,8 @@ function matchesPattern(pFullPathToFile, pPattern) { * @returns {string} */ function getDependencyUniqueKey({ module, moduleSystem, dependencyTypes }) { + // c8: dependencyTypes is hardly ever undefined anymore since PR #884, but + // we keep the `|| []` in for robustness sake return `${module} ${moduleSystem} ${(dependencyTypes || []).includes( "type-only", )}`; diff --git a/src/schema/configuration.schema.json b/src/schema/configuration.schema.json index 0184795d1..979a55fee 100644 --- a/src/schema/configuration.schema.json +++ b/src/schema/configuration.schema.json @@ -386,27 +386,41 @@ "DependencyTypeType": { "type": "string", "enum": [ - "aliased", "aliased-subpath-import", - "aliased-tsconfig", "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", "local", "localmodule", - "npm", "npm-bundled", "npm-dev", "npm-no-pkg", "npm-optional", "npm-peer", "npm-unknown", + "npm", + "require", + "triple-slash-amd-dependency", + "triple-slash-directive", + "triple-slash-file-reference", + "triple-slash-type-reference", + "type-import", + "type-only", "undetermined", - "unknown", - "type-only" + "unknown" ] }, "REAsStringsType": { diff --git a/src/schema/configuration.schema.mjs b/src/schema/configuration.schema.mjs index db2dcc871..c50498734 100644 --- a/src/schema/configuration.schema.mjs +++ b/src/schema/configuration.schema.mjs @@ -1 +1 @@ -/* generated - don't edit */export default {"title":"dependency-cruiser configuration","$schema":"http://json-schema.org/draft-07/schema#","$id":"https://dependency-cruiser.js.org/schema/configuration.schema.json","type":"object","additionalProperties":false,"properties":{"$schema":{"type":"string"},"forbidden":{"type":"array","items":{"$ref":"#/definitions/ForbiddenRuleType"}},"allowed":{"type":"array","items":{"$ref":"#/definitions/AllowedRuleType"}},"allowedSeverity":{"$ref":"#/definitions/SeverityType"},"required":{"type":"array","items":{"$ref":"#/definitions/RequiredRuleType"}},"options":{"$ref":"#/definitions/OptionsType"},"extends":{"$ref":"#/definitions/ExtendsType"}},"definitions":{"RuleSetType":{"type":"object","additionalProperties":false,"properties":{"forbidden":{"type":"array","items":{"$ref":"#/definitions/ForbiddenRuleType"}},"allowed":{"type":"array","items":{"$ref":"#/definitions/AllowedRuleType"}},"allowedSeverity":{"$ref":"#/definitions/SeverityType"},"required":{"type":"array","items":{"$ref":"#/definitions/RequiredRuleType"}}}},"AllowedRuleType":{"oneOf":[{"$ref":"#/definitions/RegularAllowedRuleType"},{"$ref":"#/definitions/ReachabilityAllowedRuleType"}]},"RegularAllowedRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"comment":{"type":"string"},"scope":{"type":"string","enum":["module","folder"]},"from":{"$ref":"#/definitions/FromRestrictionType"},"to":{"$ref":"#/definitions/ToRestrictionType"}}},"ReachabilityAllowedRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"comment":{"type":"string"},"scope":{"type":"string","enum":["module","folder"]},"from":{"$ref":"#/definitions/ReachabilityFromRestrictionType"},"to":{"$ref":"#/definitions/ReachabilityToRestrictionType"}}},"ForbiddenRuleType":{"oneOf":[{"$ref":"#/definitions/RegularForbiddenRuleType"},{"$ref":"#/definitions/ReachabilityForbiddenRuleType"},{"$ref":"#/definitions/DependentsForbiddenRuleType"}]},"RegularForbiddenRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"from":{"$ref":"#/definitions/FromRestrictionType"},"to":{"$ref":"#/definitions/ToRestrictionType"}}},"DependentsForbiddenRuleType":{"type":"object","required":["module","from"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"module":{"$ref":"#/definitions/DependentsModuleRestrictionType"},"from":{"$ref":"#/definitions/DependentsFromRestrictionType"}}},"ReachabilityForbiddenRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"from":{"$ref":"#/definitions/ReachabilityFromRestrictionType"},"to":{"$ref":"#/definitions/ReachabilityToRestrictionType"}}},"RequiredRuleType":{"type":"object","required":["module","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"module":{"$ref":"#/definitions/RequiredModuleRestrictionType"},"to":{"$ref":"#/definitions/RequiredToRestrictionType"}}},"FromRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"orphan":{"type":"boolean"}}},"ReachabilityFromRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"ToRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"couldNotResolve":{"type":"boolean"},"circular":{"type":"boolean"},"dynamic":{"type":"boolean"},"exoticallyRequired":{"type":"boolean"},"exoticRequire":{"$ref":"#/definitions/REAsStringsType"},"exoticRequireNot":{"$ref":"#/definitions/REAsStringsType"},"preCompilationOnly":{"type":"boolean"},"dependencyTypes":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}},"dependencyTypesNot":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}},"moreThanOneDependencyType":{"type":"boolean"},"license":{"$ref":"#/definitions/REAsStringsType"},"licenseNot":{"$ref":"#/definitions/REAsStringsType"},"via":{"$ref":"#/definitions/REAsStringsType"},"viaOnly":{"$ref":"#/definitions/REAsStringsType"},"viaNot":{"$ref":"#/definitions/REAsStringsType"},"viaSomeNot":{"$ref":"#/definitions/REAsStringsType"},"moreUnstable":{"type":"boolean"}}},"DependentsModuleRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"numberOfDependentsLessThan":{"type":"integer","minimum":0,"maximum":100},"numberOfDependentsMoreThan":{"type":"integer","minimum":0,"maximum":100}}},"DependentsFromRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"ReachabilityToRestrictionType":{"required":["reachable"],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"reachable":{"type":"boolean"}}},"RequiredModuleRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"RequiredToRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"DependencyTypeType":{"type":"string","enum":["aliased","aliased-subpath-import","aliased-tsconfig","aliased-tsconfig-base-url","aliased-tsconfig-paths","aliased-webpack","aliased-workspace","core","deprecated","local","localmodule","npm","npm-bundled","npm-dev","npm-no-pkg","npm-optional","npm-peer","npm-unknown","undetermined","unknown","type-only"]},"REAsStringsType":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"SeverityType":{"type":"string","enum":["error","warn","info","ignore"]},"OptionsType":{"type":"object","additionalProperties":false,"properties":{"doNotFollow":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundDoNotFollowType"}]},"exclude":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundExcludeType"}]},"includeOnly":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundIncludeOnlyType"}]},"focus":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundFocusType"}]},"reaches":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundReachesType"}]},"highlight":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundHighlightType"}]},"knownViolations":{"$ref":"#/definitions/ViolationsType"},"collapse":{"oneOf":[{"type":"string"},{"type":"integer","minimum":1,"maximum":9}]},"maxDepth":{"type":"integer","minimum":0,"maximum":99},"moduleSystems":{"$ref":"#/definitions/ModuleSystemsType"},"prefix":{"type":"string"},"preserveSymlinks":{"type":"boolean"},"combinedDependencies":{"type":"boolean"},"tsConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"}}},"tsPreCompilationDeps":{"oneOf":[{"type":"boolean"},{"type":"string","enum":["specify"]}]},"extraExtensionsToScan":{"type":"array","items":{"type":"string"}},"externalModuleResolutionStrategy":{"type":"string","enum":["node_modules","yarn-pnp"]},"builtInModules":{"type":"object","additionalProperties":false,"properties":{"override":{"type":"array","items":{"type":"string"}},"add":{"type":"array","items":{"type":"string"}}}},"forceDeriveDependents":{"type":"boolean"},"webpackConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"},"env":{"oneOf":[{"type":"object"},{"type":"string"}]},"arguments":{"type":"object"}}},"enhancedResolveOptions":{"type":"object","additionalProperties":false,"properties":{"exportsFields":{"type":"array","items":{"type":"string"}},"conditionNames":{"type":"array","items":{"type":"string"}},"extensions":{"type":"array","items":{"type":"string"}},"mainFields":{"type":"array","items":{"type":"string"}},"mainFiles":{"type":"array"},"aliasFields":{"type":"array","items":{"type":"string"}},"cachedInputFileSystem":{"type":"object","additionalProperties":false,"properties":{"cacheDuration":{"type":"integer","minimum":0,"maximum":1800000}}}}},"babelConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"}}},"parser":{"type":"string","enum":["acorn","swc","tsc"]},"exoticRequireStrings":{"type":"array","items":{"type":"string"}},"reporterOptions":{"$ref":"#/definitions/ReporterOptionsType"},"progress":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["cli-feedback","performance-log","ndjson","none"]},"maximumLevel":{"type":"number","enum":[-1,40,50,60,70,80,99]}}},"metrics":{"type":"boolean"},"baseDir":{"type":"string"},"cache":{"oneOf":[{"type":"boolean"},{"type":"string"},{"$ref":"#/definitions/CacheOptionsType"}]}}},"ModuleSystemType":{"type":"string","enum":["cjs","es6","amd","tsd"]},"ModuleSystemsType":{"type":"array","items":{"$ref":"#/definitions/ModuleSystemType"}},"CompoundExcludeType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"dynamic":{"type":"boolean"}}},"CompoundDoNotFollowType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"dependencyTypes":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}}}},"CompoundIncludeOnlyType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"CompoundFocusType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"depth":{"type":"number","minimum":1,"maximum":4}}},"CompoundReachesType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"CompoundHighlightType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"ReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"anon":{"$ref":"#/definitions/AnonReporterOptionsType"},"archi":{"$ref":"#/definitions/DotReporterOptionsType"},"dot":{"$ref":"#/definitions/DotReporterOptionsType"},"ddot":{"$ref":"#/definitions/DotReporterOptionsType"},"flat":{"$ref":"#/definitions/DotReporterOptionsType"},"markdown":{"$ref":"#/definitions/MarkdownReporterOptionsType"},"metrics":{"$ref":"#/definitions/MetricsReporterOptionsType"},"mermaid":{"$ref":"#/definitions/MermaidReporterOptionsType"},"text":{"$ref":"#/definitions/TextReporterOptionsType"}}},"AnonReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"wordlist":{"type":"array","items":{"type":"string"}}}},"MetricsReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"orderBy":{"type":"string","enum":["instability","moduleCount","afferentCouplings","efferentCouplings","name"]},"hideModules":{"type":"boolean"},"hideFolders":{"type":"boolean"}}},"MarkdownReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"showTitle":{"type":"boolean"},"title":{"type":"string"},"showSummary":{"type":"boolean"},"showSummaryHeader":{"type":"boolean"},"summaryHeader":{"type":"string"},"showStatsSummary":{"type":"boolean"},"showRulesSummary":{"type":"boolean"},"includeIgnoredInSummary":{"type":"boolean"},"showDetails":{"type":"boolean"},"includeIgnoredInDetails":{"type":"boolean"},"showDetailsHeader":{"type":"boolean"},"detailsHeader":{"type":"string"},"collapseDetails":{"type":"boolean"},"collapsedMessage":{"type":"string"},"noViolationsMessage":{"type":"string"},"showFooter":{"type":"boolean"}}},"MermaidReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"minify":{"type":"boolean"}}},"TextReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"highlightFocused":{"type":"boolean"}}},"DotReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"collapsePattern":{"$ref":"#/definitions/REAsStringsType"},"filters":{"$ref":"#/definitions/ReporterFiltersType"},"showMetrics":{"type":"boolean"},"theme":{"$ref":"#/definitions/DotThemeType"}}},"DotThemeType":{"type":"object","additionalProperties":false,"properties":{"replace":{"type":"boolean"},"graph":{"type":"object"},"node":{"type":"object"},"edge":{"type":"object"},"modules":{"$ref":"#/definitions/DotThemeArrayType"},"dependencies":{"$ref":"#/definitions/DotThemeArrayType"}}},"DotThemeArrayType":{"type":"array","items":{"$ref":"#/definitions/DotThemeEntryType"}},"DotThemeEntryType":{"type":"object","additionalProperties":false,"properties":{"criteria":{"type":"object"},"attributes":{"type":"object"}}},"ReporterFiltersType":{"type":"object","additionalProperties":false,"properties":{"exclude":{"$ref":"#/definitions/CompoundExcludeType"},"includeOnly":{"$ref":"#/definitions/CompoundIncludeOnlyType"},"focus":{"$ref":"#/definitions/CompoundFocusType"},"reaches":{"$ref":"#/definitions/CompoundReachesType"}}},"ViolationsType":{"type":"array","items":{"$ref":"#/definitions/ViolationType"}},"ViolationType":{"type":"object","required":["from","to","rule"],"additionalProperties":false,"properties":{"from":{"type":"string"},"to":{"type":"string"},"type":{"$ref":"#/definitions/ViolationTypeType"},"rule":{"$ref":"#/definitions/RuleSummaryType"},"cycle":{"type":"array","items":{"type":"string"}},"via":{"type":"array","items":{"type":"string"}},"metrics":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"from":{"type":"object","required":["instability"],"additionalProperties":false,"properties":{"instability":{"type":"number"}}},"to":{"type":"object","required":["instability"],"additionalProperties":false,"properties":{"instability":{"type":"number"}}}}},"comment":{"type":"string"}}},"RuleSummaryType":{"type":"object","required":["name","severity"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"}}},"ViolationTypeType":{"type":"string","enum":["dependency","module","reachability","cycle","instability","folder"]},"CacheOptionsType":{"type":"object","additionalProperties":false,"properties":{"folder":{"type":"string"},"strategy":{"$ref":"#/definitions/CacheStrategyType"},"compress":{"type":"boolean","default":false}}},"CacheStrategyType":{"type":"string","enum":["metadata","content"]},"ExtendsType":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}}} \ No newline at end of file +/* generated - don't edit */export default {"title":"dependency-cruiser configuration","$schema":"http://json-schema.org/draft-07/schema#","$id":"https://dependency-cruiser.js.org/schema/configuration.schema.json","type":"object","additionalProperties":false,"properties":{"$schema":{"type":"string"},"forbidden":{"type":"array","items":{"$ref":"#/definitions/ForbiddenRuleType"}},"allowed":{"type":"array","items":{"$ref":"#/definitions/AllowedRuleType"}},"allowedSeverity":{"$ref":"#/definitions/SeverityType"},"required":{"type":"array","items":{"$ref":"#/definitions/RequiredRuleType"}},"options":{"$ref":"#/definitions/OptionsType"},"extends":{"$ref":"#/definitions/ExtendsType"}},"definitions":{"RuleSetType":{"type":"object","additionalProperties":false,"properties":{"forbidden":{"type":"array","items":{"$ref":"#/definitions/ForbiddenRuleType"}},"allowed":{"type":"array","items":{"$ref":"#/definitions/AllowedRuleType"}},"allowedSeverity":{"$ref":"#/definitions/SeverityType"},"required":{"type":"array","items":{"$ref":"#/definitions/RequiredRuleType"}}}},"AllowedRuleType":{"oneOf":[{"$ref":"#/definitions/RegularAllowedRuleType"},{"$ref":"#/definitions/ReachabilityAllowedRuleType"}]},"RegularAllowedRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"comment":{"type":"string"},"scope":{"type":"string","enum":["module","folder"]},"from":{"$ref":"#/definitions/FromRestrictionType"},"to":{"$ref":"#/definitions/ToRestrictionType"}}},"ReachabilityAllowedRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"comment":{"type":"string"},"scope":{"type":"string","enum":["module","folder"]},"from":{"$ref":"#/definitions/ReachabilityFromRestrictionType"},"to":{"$ref":"#/definitions/ReachabilityToRestrictionType"}}},"ForbiddenRuleType":{"oneOf":[{"$ref":"#/definitions/RegularForbiddenRuleType"},{"$ref":"#/definitions/ReachabilityForbiddenRuleType"},{"$ref":"#/definitions/DependentsForbiddenRuleType"}]},"RegularForbiddenRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"from":{"$ref":"#/definitions/FromRestrictionType"},"to":{"$ref":"#/definitions/ToRestrictionType"}}},"DependentsForbiddenRuleType":{"type":"object","required":["module","from"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"module":{"$ref":"#/definitions/DependentsModuleRestrictionType"},"from":{"$ref":"#/definitions/DependentsFromRestrictionType"}}},"ReachabilityForbiddenRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"from":{"$ref":"#/definitions/ReachabilityFromRestrictionType"},"to":{"$ref":"#/definitions/ReachabilityToRestrictionType"}}},"RequiredRuleType":{"type":"object","required":["module","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"module":{"$ref":"#/definitions/RequiredModuleRestrictionType"},"to":{"$ref":"#/definitions/RequiredToRestrictionType"}}},"FromRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"orphan":{"type":"boolean"}}},"ReachabilityFromRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"ToRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"couldNotResolve":{"type":"boolean"},"circular":{"type":"boolean"},"dynamic":{"type":"boolean"},"exoticallyRequired":{"type":"boolean"},"exoticRequire":{"$ref":"#/definitions/REAsStringsType"},"exoticRequireNot":{"$ref":"#/definitions/REAsStringsType"},"preCompilationOnly":{"type":"boolean"},"dependencyTypes":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}},"dependencyTypesNot":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}},"moreThanOneDependencyType":{"type":"boolean"},"license":{"$ref":"#/definitions/REAsStringsType"},"licenseNot":{"$ref":"#/definitions/REAsStringsType"},"via":{"$ref":"#/definitions/REAsStringsType"},"viaOnly":{"$ref":"#/definitions/REAsStringsType"},"viaNot":{"$ref":"#/definitions/REAsStringsType"},"viaSomeNot":{"$ref":"#/definitions/REAsStringsType"},"moreUnstable":{"type":"boolean"}}},"DependentsModuleRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"numberOfDependentsLessThan":{"type":"integer","minimum":0,"maximum":100},"numberOfDependentsMoreThan":{"type":"integer","minimum":0,"maximum":100}}},"DependentsFromRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"ReachabilityToRestrictionType":{"required":["reachable"],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"reachable":{"type":"boolean"}}},"RequiredModuleRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"RequiredToRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"DependencyTypeType":{"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","local","localmodule","npm-bundled","npm-dev","npm-no-pkg","npm-optional","npm-peer","npm-unknown","npm","require","triple-slash-amd-dependency","triple-slash-directive","triple-slash-file-reference","triple-slash-type-reference","type-import","type-only","undetermined","unknown"]},"REAsStringsType":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"SeverityType":{"type":"string","enum":["error","warn","info","ignore"]},"OptionsType":{"type":"object","additionalProperties":false,"properties":{"doNotFollow":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundDoNotFollowType"}]},"exclude":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundExcludeType"}]},"includeOnly":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundIncludeOnlyType"}]},"focus":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundFocusType"}]},"reaches":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundReachesType"}]},"highlight":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundHighlightType"}]},"knownViolations":{"$ref":"#/definitions/ViolationsType"},"collapse":{"oneOf":[{"type":"string"},{"type":"integer","minimum":1,"maximum":9}]},"maxDepth":{"type":"integer","minimum":0,"maximum":99},"moduleSystems":{"$ref":"#/definitions/ModuleSystemsType"},"prefix":{"type":"string"},"preserveSymlinks":{"type":"boolean"},"combinedDependencies":{"type":"boolean"},"tsConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"}}},"tsPreCompilationDeps":{"oneOf":[{"type":"boolean"},{"type":"string","enum":["specify"]}]},"extraExtensionsToScan":{"type":"array","items":{"type":"string"}},"externalModuleResolutionStrategy":{"type":"string","enum":["node_modules","yarn-pnp"]},"builtInModules":{"type":"object","additionalProperties":false,"properties":{"override":{"type":"array","items":{"type":"string"}},"add":{"type":"array","items":{"type":"string"}}}},"forceDeriveDependents":{"type":"boolean"},"webpackConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"},"env":{"oneOf":[{"type":"object"},{"type":"string"}]},"arguments":{"type":"object"}}},"enhancedResolveOptions":{"type":"object","additionalProperties":false,"properties":{"exportsFields":{"type":"array","items":{"type":"string"}},"conditionNames":{"type":"array","items":{"type":"string"}},"extensions":{"type":"array","items":{"type":"string"}},"mainFields":{"type":"array","items":{"type":"string"}},"mainFiles":{"type":"array"},"aliasFields":{"type":"array","items":{"type":"string"}},"cachedInputFileSystem":{"type":"object","additionalProperties":false,"properties":{"cacheDuration":{"type":"integer","minimum":0,"maximum":1800000}}}}},"babelConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"}}},"parser":{"type":"string","enum":["acorn","swc","tsc"]},"exoticRequireStrings":{"type":"array","items":{"type":"string"}},"reporterOptions":{"$ref":"#/definitions/ReporterOptionsType"},"progress":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["cli-feedback","performance-log","ndjson","none"]},"maximumLevel":{"type":"number","enum":[-1,40,50,60,70,80,99]}}},"metrics":{"type":"boolean"},"baseDir":{"type":"string"},"cache":{"oneOf":[{"type":"boolean"},{"type":"string"},{"$ref":"#/definitions/CacheOptionsType"}]}}},"ModuleSystemType":{"type":"string","enum":["cjs","es6","amd","tsd"]},"ModuleSystemsType":{"type":"array","items":{"$ref":"#/definitions/ModuleSystemType"}},"CompoundExcludeType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"dynamic":{"type":"boolean"}}},"CompoundDoNotFollowType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"dependencyTypes":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}}}},"CompoundIncludeOnlyType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"CompoundFocusType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"depth":{"type":"number","minimum":1,"maximum":4}}},"CompoundReachesType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"CompoundHighlightType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"ReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"anon":{"$ref":"#/definitions/AnonReporterOptionsType"},"archi":{"$ref":"#/definitions/DotReporterOptionsType"},"dot":{"$ref":"#/definitions/DotReporterOptionsType"},"ddot":{"$ref":"#/definitions/DotReporterOptionsType"},"flat":{"$ref":"#/definitions/DotReporterOptionsType"},"markdown":{"$ref":"#/definitions/MarkdownReporterOptionsType"},"metrics":{"$ref":"#/definitions/MetricsReporterOptionsType"},"mermaid":{"$ref":"#/definitions/MermaidReporterOptionsType"},"text":{"$ref":"#/definitions/TextReporterOptionsType"}}},"AnonReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"wordlist":{"type":"array","items":{"type":"string"}}}},"MetricsReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"orderBy":{"type":"string","enum":["instability","moduleCount","afferentCouplings","efferentCouplings","name"]},"hideModules":{"type":"boolean"},"hideFolders":{"type":"boolean"}}},"MarkdownReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"showTitle":{"type":"boolean"},"title":{"type":"string"},"showSummary":{"type":"boolean"},"showSummaryHeader":{"type":"boolean"},"summaryHeader":{"type":"string"},"showStatsSummary":{"type":"boolean"},"showRulesSummary":{"type":"boolean"},"includeIgnoredInSummary":{"type":"boolean"},"showDetails":{"type":"boolean"},"includeIgnoredInDetails":{"type":"boolean"},"showDetailsHeader":{"type":"boolean"},"detailsHeader":{"type":"string"},"collapseDetails":{"type":"boolean"},"collapsedMessage":{"type":"string"},"noViolationsMessage":{"type":"string"},"showFooter":{"type":"boolean"}}},"MermaidReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"minify":{"type":"boolean"}}},"TextReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"highlightFocused":{"type":"boolean"}}},"DotReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"collapsePattern":{"$ref":"#/definitions/REAsStringsType"},"filters":{"$ref":"#/definitions/ReporterFiltersType"},"showMetrics":{"type":"boolean"},"theme":{"$ref":"#/definitions/DotThemeType"}}},"DotThemeType":{"type":"object","additionalProperties":false,"properties":{"replace":{"type":"boolean"},"graph":{"type":"object"},"node":{"type":"object"},"edge":{"type":"object"},"modules":{"$ref":"#/definitions/DotThemeArrayType"},"dependencies":{"$ref":"#/definitions/DotThemeArrayType"}}},"DotThemeArrayType":{"type":"array","items":{"$ref":"#/definitions/DotThemeEntryType"}},"DotThemeEntryType":{"type":"object","additionalProperties":false,"properties":{"criteria":{"type":"object"},"attributes":{"type":"object"}}},"ReporterFiltersType":{"type":"object","additionalProperties":false,"properties":{"exclude":{"$ref":"#/definitions/CompoundExcludeType"},"includeOnly":{"$ref":"#/definitions/CompoundIncludeOnlyType"},"focus":{"$ref":"#/definitions/CompoundFocusType"},"reaches":{"$ref":"#/definitions/CompoundReachesType"}}},"ViolationsType":{"type":"array","items":{"$ref":"#/definitions/ViolationType"}},"ViolationType":{"type":"object","required":["from","to","rule"],"additionalProperties":false,"properties":{"from":{"type":"string"},"to":{"type":"string"},"type":{"$ref":"#/definitions/ViolationTypeType"},"rule":{"$ref":"#/definitions/RuleSummaryType"},"cycle":{"type":"array","items":{"type":"string"}},"via":{"type":"array","items":{"type":"string"}},"metrics":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"from":{"type":"object","required":["instability"],"additionalProperties":false,"properties":{"instability":{"type":"number"}}},"to":{"type":"object","required":["instability"],"additionalProperties":false,"properties":{"instability":{"type":"number"}}}}},"comment":{"type":"string"}}},"RuleSummaryType":{"type":"object","required":["name","severity"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"}}},"ViolationTypeType":{"type":"string","enum":["dependency","module","reachability","cycle","instability","folder"]},"CacheOptionsType":{"type":"object","additionalProperties":false,"properties":{"folder":{"type":"string"},"strategy":{"$ref":"#/definitions/CacheStrategyType"},"compress":{"type":"boolean","default":false}}},"CacheStrategyType":{"type":"string","enum":["metadata","content"]},"ExtendsType":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]}}} \ No newline at end of file diff --git a/src/schema/cruise-result.schema.json b/src/schema/cruise-result.schema.json index 9bd31ccb6..8e0f6f557 100644 --- a/src/schema/cruise-result.schema.json +++ b/src/schema/cruise-result.schema.json @@ -267,27 +267,41 @@ "DependencyTypeType": { "type": "string", "enum": [ - "aliased", "aliased-subpath-import", - "aliased-tsconfig", "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", "local", "localmodule", - "npm", "npm-bundled", "npm-dev", "npm-no-pkg", "npm-optional", "npm-peer", "npm-unknown", + "npm", + "require", + "triple-slash-amd-dependency", + "triple-slash-directive", + "triple-slash-file-reference", + "triple-slash-type-reference", + "type-import", + "type-only", "undetermined", - "unknown", - "type-only" + "unknown" ] }, "ModuleSystemType": { diff --git a/src/schema/cruise-result.schema.mjs b/src/schema/cruise-result.schema.mjs index 8b08f68ba..8c6b71d97 100644 --- a/src/schema/cruise-result.schema.mjs +++ b/src/schema/cruise-result.schema.mjs @@ -1 +1 @@ -/* generated - don't edit */export default {"title":"dependency-cruiser output format","$schema":"http://json-schema.org/draft-07/schema#","$id":"https://dependency-cruiser.js.org/schema/cruise-result.schema.json","type":"object","required":["summary","modules"],"additionalProperties":false,"properties":{"modules":{"$ref":"#/definitions/ModulesType"},"folders":{"$ref":"#/definitions/FoldersType"},"summary":{"$ref":"#/definitions/SummaryType"},"revisionData":{"$ref":"#/definitions/RevisionDataType"}},"definitions":{"ModulesType":{"type":"array","items":{"$ref":"#/definitions/ModuleType"}},"ModuleType":{"type":"object","required":["source","dependencies","valid"],"additionalProperties":false,"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"},"checksum":{"type":"string"}}},"ReachableType":{"type":"object","required":["value","asDefinedInRule","matchedFrom"],"additionalProperties":false,"properties":{"value":{"type":"boolean"},"asDefinedInRule":{"type":"string"},"matchedFrom":{"type":"string"}}},"ReachesType":{"type":"object","required":["modules","asDefinedInRule"],"additionalProperties":false,"properties":{"modules":{"type":"array","items":{"type":"object","required":["source","via"],"additionalProperties":false,"properties":{"source":{"type":"string"},"via":{"type":"array","items":{"type":"string"}}}}},"asDefinedInRule":{"type":"string"}}},"DependenciesType":{"type":"array","items":{"$ref":"#/definitions/DependencyType"}},"DependencyType":{"type":"object","required":["circular","coreModule","couldNotResolve","dependencyTypes","exoticallyRequired","dynamic","followable","module","moduleSystem","resolved","valid"],"additionalProperties":false,"properties":{"module":{"type":"string"},"protocol":{"type":"string","enum":["data:","file:","node:"]},"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":{"type":"string"}},"moduleSystem":{"$ref":"#/definitions/ModuleSystemType"},"valid":{"type":"boolean"},"rules":{"type":"array","items":{"$ref":"#/definitions/RuleSummaryType"}},"instability":{"type":"number"}}},"DependencyTypeType":{"type":"string","enum":["aliased","aliased-subpath-import","aliased-tsconfig","aliased-tsconfig-base-url","aliased-tsconfig-paths","aliased-webpack","aliased-workspace","core","deprecated","local","localmodule","npm","npm-bundled","npm-dev","npm-no-pkg","npm-optional","npm-peer","npm-unknown","undetermined","unknown","type-only"]},"ModuleSystemType":{"type":"string","enum":["cjs","es6","amd","tsd"]},"RuleSummaryType":{"type":"object","required":["name","severity"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"}}},"SeverityType":{"type":"string","enum":["error","warn","info","ignore"]},"FoldersType":{"type":"array","items":{"$ref":"#/definitions/FolderType"}},"FolderType":{"type":"object","required":["name","moduleCount"],"additionalProperties":false,"properties":{"name":{"type":"string"},"dependents":{"type":"array","items":{"type":"object","required":["name"],"additionalProperties":false,"properties":{"name":{"type":"string"}}}},"dependencies":{"type":"array","items":{"type":"object","required":["name","valid","circular"],"additionalProperties":false,"properties":{"name":{"type":"string"},"instability":{"type":"number"},"valid":{"type":"boolean"},"circular":{"type":"boolean"},"cycle":{"type":"array","items":{"type":"string"}},"rules":{"type":"array","items":{"$ref":"#/definitions/RuleSummaryType"}}}}},"moduleCount":{"type":"number"},"afferentCouplings":{"type":"number"},"efferentCouplings":{"type":"number"},"instability":{"type":"number"}}},"SummaryType":{"type":"object","required":["violations","error","warn","info","totalCruised","optionsUsed"],"additionalProperties":false,"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"}}},"ViolationsType":{"type":"array","items":{"$ref":"#/definitions/ViolationType"}},"ViolationType":{"type":"object","required":["from","to","rule"],"additionalProperties":false,"properties":{"from":{"type":"string"},"to":{"type":"string"},"type":{"$ref":"#/definitions/ViolationTypeType"},"rule":{"$ref":"#/definitions/RuleSummaryType"},"cycle":{"type":"array","items":{"type":"string"}},"via":{"type":"array","items":{"type":"string"}},"metrics":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"from":{"type":"object","required":["instability"],"additionalProperties":false,"properties":{"instability":{"type":"number"}}},"to":{"type":"object","required":["instability"],"additionalProperties":false,"properties":{"instability":{"type":"number"}}}}},"comment":{"type":"string"}}},"ViolationTypeType":{"type":"string","enum":["dependency","module","reachability","cycle","instability","folder"]},"RuleSetType":{"type":"object","additionalProperties":false,"properties":{"forbidden":{"type":"array","items":{"$ref":"#/definitions/ForbiddenRuleType"}},"allowed":{"type":"array","items":{"$ref":"#/definitions/AllowedRuleType"}},"allowedSeverity":{"$ref":"#/definitions/SeverityType"},"required":{"type":"array","items":{"$ref":"#/definitions/RequiredRuleType"}}}},"AllowedRuleType":{"oneOf":[{"$ref":"#/definitions/RegularAllowedRuleType"},{"$ref":"#/definitions/ReachabilityAllowedRuleType"}]},"RegularAllowedRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"comment":{"type":"string"},"scope":{"type":"string","enum":["module","folder"]},"from":{"$ref":"#/definitions/FromRestrictionType"},"to":{"$ref":"#/definitions/ToRestrictionType"}}},"ReachabilityAllowedRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"comment":{"type":"string"},"scope":{"type":"string","enum":["module","folder"]},"from":{"$ref":"#/definitions/ReachabilityFromRestrictionType"},"to":{"$ref":"#/definitions/ReachabilityToRestrictionType"}}},"ForbiddenRuleType":{"oneOf":[{"$ref":"#/definitions/RegularForbiddenRuleType"},{"$ref":"#/definitions/ReachabilityForbiddenRuleType"},{"$ref":"#/definitions/DependentsForbiddenRuleType"}]},"RegularForbiddenRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"from":{"$ref":"#/definitions/FromRestrictionType"},"to":{"$ref":"#/definitions/ToRestrictionType"}}},"DependentsForbiddenRuleType":{"type":"object","required":["module","from"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"module":{"$ref":"#/definitions/DependentsModuleRestrictionType"},"from":{"$ref":"#/definitions/DependentsFromRestrictionType"}}},"ReachabilityForbiddenRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"from":{"$ref":"#/definitions/ReachabilityFromRestrictionType"},"to":{"$ref":"#/definitions/ReachabilityToRestrictionType"}}},"RequiredRuleType":{"type":"object","required":["module","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"module":{"$ref":"#/definitions/RequiredModuleRestrictionType"},"to":{"$ref":"#/definitions/RequiredToRestrictionType"}}},"FromRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"orphan":{"type":"boolean"}}},"ReachabilityFromRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"ToRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"couldNotResolve":{"type":"boolean"},"circular":{"type":"boolean"},"dynamic":{"type":"boolean"},"exoticallyRequired":{"type":"boolean"},"exoticRequire":{"$ref":"#/definitions/REAsStringsType"},"exoticRequireNot":{"$ref":"#/definitions/REAsStringsType"},"preCompilationOnly":{"type":"boolean"},"dependencyTypes":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}},"dependencyTypesNot":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}},"moreThanOneDependencyType":{"type":"boolean"},"license":{"$ref":"#/definitions/REAsStringsType"},"licenseNot":{"$ref":"#/definitions/REAsStringsType"},"via":{"$ref":"#/definitions/REAsStringsType"},"viaOnly":{"$ref":"#/definitions/REAsStringsType"},"viaNot":{"$ref":"#/definitions/REAsStringsType"},"viaSomeNot":{"$ref":"#/definitions/REAsStringsType"},"moreUnstable":{"type":"boolean"}}},"DependentsModuleRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"numberOfDependentsLessThan":{"type":"integer","minimum":0,"maximum":100},"numberOfDependentsMoreThan":{"type":"integer","minimum":0,"maximum":100}}},"DependentsFromRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"ReachabilityToRestrictionType":{"required":["reachable"],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"reachable":{"type":"boolean"}}},"RequiredModuleRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"RequiredToRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"REAsStringsType":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"OptionsUsedType":{"type":"object","additionalProperties":false,"properties":{"doNotFollow":{"$ref":"#/definitions/CompoundDoNotFollowType"},"exclude":{"$ref":"#/definitions/CompoundExcludeType"},"includeOnly":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundIncludeOnlyType"}]},"focus":{"$ref":"#/definitions/CompoundFocusType"},"reaches":{"$ref":"#/definitions/CompoundReachesType"},"highlight":{"$ref":"#/definitions/CompoundHighlightType"},"knownViolations":{"$ref":"#/definitions/ViolationsType"},"collapse":{"type":"string"},"maxDepth":{"type":"integer","minimum":0,"maximum":99},"moduleSystems":{"$ref":"#/definitions/ModuleSystemsType"},"prefix":{"type":"string"},"preserveSymlinks":{"type":"boolean"},"combinedDependencies":{"type":"boolean"},"tsConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"}}},"tsPreCompilationDeps":{"oneOf":[{"type":"boolean"},{"type":"string","enum":["specify"]}]},"extraExtensionsToScan":{"type":"array","items":{"type":"string"}},"externalModuleResolutionStrategy":{"type":"string","enum":["node_modules","yarn-pnp"]},"builtInModules":{"type":"object","additionalProperties":false,"properties":{"override":{"type":"array","items":{"type":"string"}},"add":{"type":"array","items":{"type":"string"}}}},"forceDeriveDependents":{"type":"boolean"},"webpackConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"},"env":{"oneOf":[{"type":"object"},{"type":"string"}]},"arguments":{"type":"object"}}},"enhancedResolveOptions":{"type":"object","additionalProperties":false,"properties":{"exportsFields":{"type":"array","items":{"type":"string"}},"conditionNames":{"type":"array","items":{"type":"string"}},"extensions":{"type":"array","items":{"type":"string"}},"mainFields":{"type":"array","items":{"type":"string"}},"mainFiles":{"type":"array"},"aliasFields":{"type":"array","items":{"type":"string"}},"cachedInputFileSystem":{"type":"object","additionalProperties":false,"properties":{"cacheDuration":{"type":"integer","minimum":0,"maximum":1800000}}}}},"babelConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"}}},"parser":{"type":"string","enum":["acorn","swc","tsc"]},"exoticRequireStrings":{"type":"array","items":{"type":"string"}},"reporterOptions":{"$ref":"#/definitions/ReporterOptionsType"},"progress":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["cli-feedback","performance-log","ndjson","none"]},"maximumLevel":{"type":"number","enum":[-1,40,50,60,70,80,99]}}},"metrics":{"type":"boolean"},"baseDir":{"type":"string"},"cache":{"oneOf":[{"type":"boolean","enum":[false]},{"$ref":"#/definitions/CacheOptionsType"}]},"args":{"type":"string"},"rulesFile":{"type":"string"},"outputTo":{"type":"string"},"outputType":{"$ref":"#/definitions/OutputType"}}},"ModuleSystemsType":{"type":"array","items":{"$ref":"#/definitions/ModuleSystemType"}},"OutputType":{"oneOf":[{"type":"string","enum":["json","html","dot","ddot","cdot","archi","fdot","flat","csv","err","err-long","err-html","teamcity","anon","text","metrics","markdown","mermaid","d2","null"]},{"type":"string","pattern":"^plugin:[^:]+$"}]},"CompoundExcludeType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"dynamic":{"type":"boolean"}}},"CompoundDoNotFollowType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"dependencyTypes":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}}}},"CompoundIncludeOnlyType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"CompoundFocusType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"depth":{"type":"number","minimum":1,"maximum":4}}},"CompoundReachesType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"CompoundHighlightType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"ReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"anon":{"$ref":"#/definitions/AnonReporterOptionsType"},"archi":{"$ref":"#/definitions/DotReporterOptionsType"},"dot":{"$ref":"#/definitions/DotReporterOptionsType"},"ddot":{"$ref":"#/definitions/DotReporterOptionsType"},"flat":{"$ref":"#/definitions/DotReporterOptionsType"},"markdown":{"$ref":"#/definitions/MarkdownReporterOptionsType"},"metrics":{"$ref":"#/definitions/MetricsReporterOptionsType"},"mermaid":{"$ref":"#/definitions/MermaidReporterOptionsType"},"text":{"$ref":"#/definitions/TextReporterOptionsType"}}},"AnonReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"wordlist":{"type":"array","items":{"type":"string"}}}},"MetricsReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"orderBy":{"type":"string","enum":["instability","moduleCount","afferentCouplings","efferentCouplings","name"]},"hideModules":{"type":"boolean"},"hideFolders":{"type":"boolean"}}},"MarkdownReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"showTitle":{"type":"boolean"},"title":{"type":"string"},"showSummary":{"type":"boolean"},"showSummaryHeader":{"type":"boolean"},"summaryHeader":{"type":"string"},"showStatsSummary":{"type":"boolean"},"showRulesSummary":{"type":"boolean"},"includeIgnoredInSummary":{"type":"boolean"},"showDetails":{"type":"boolean"},"includeIgnoredInDetails":{"type":"boolean"},"showDetailsHeader":{"type":"boolean"},"detailsHeader":{"type":"string"},"collapseDetails":{"type":"boolean"},"collapsedMessage":{"type":"string"},"noViolationsMessage":{"type":"string"},"showFooter":{"type":"boolean"}}},"MermaidReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"minify":{"type":"boolean"}}},"TextReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"highlightFocused":{"type":"boolean"}}},"DotReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"collapsePattern":{"$ref":"#/definitions/REAsStringsType"},"filters":{"$ref":"#/definitions/ReporterFiltersType"},"showMetrics":{"type":"boolean"},"theme":{"$ref":"#/definitions/DotThemeType"}}},"DotThemeType":{"type":"object","additionalProperties":false,"properties":{"replace":{"type":"boolean"},"graph":{"type":"object"},"node":{"type":"object"},"edge":{"type":"object"},"modules":{"$ref":"#/definitions/DotThemeArrayType"},"dependencies":{"$ref":"#/definitions/DotThemeArrayType"}}},"DotThemeArrayType":{"type":"array","items":{"$ref":"#/definitions/DotThemeEntryType"}},"DotThemeEntryType":{"type":"object","additionalProperties":false,"properties":{"criteria":{"type":"object"},"attributes":{"type":"object"}}},"ReporterFiltersType":{"type":"object","additionalProperties":false,"properties":{"exclude":{"$ref":"#/definitions/CompoundExcludeType"},"includeOnly":{"$ref":"#/definitions/CompoundIncludeOnlyType"},"focus":{"$ref":"#/definitions/CompoundFocusType"},"reaches":{"$ref":"#/definitions/CompoundReachesType"}}},"CacheOptionsType":{"type":"object","additionalProperties":false,"properties":{"folder":{"type":"string"},"strategy":{"$ref":"#/definitions/CacheStrategyType"},"compress":{"type":"boolean","default":false}}},"CacheStrategyType":{"type":"string","enum":["metadata","content"]},"RevisionDataType":{"type":"object","required":["SHA1","changes"],"properties":{"SHA1":{"type":"string"},"changes":{"type":"array","items":{"type":"object","required":["name","changeType"],"properties":{"name":{"type":"string"},"changeType":{"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"}}}}}}}} \ No newline at end of file +/* generated - don't edit */export default {"title":"dependency-cruiser output format","$schema":"http://json-schema.org/draft-07/schema#","$id":"https://dependency-cruiser.js.org/schema/cruise-result.schema.json","type":"object","required":["summary","modules"],"additionalProperties":false,"properties":{"modules":{"$ref":"#/definitions/ModulesType"},"folders":{"$ref":"#/definitions/FoldersType"},"summary":{"$ref":"#/definitions/SummaryType"},"revisionData":{"$ref":"#/definitions/RevisionDataType"}},"definitions":{"ModulesType":{"type":"array","items":{"$ref":"#/definitions/ModuleType"}},"ModuleType":{"type":"object","required":["source","dependencies","valid"],"additionalProperties":false,"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"},"checksum":{"type":"string"}}},"ReachableType":{"type":"object","required":["value","asDefinedInRule","matchedFrom"],"additionalProperties":false,"properties":{"value":{"type":"boolean"},"asDefinedInRule":{"type":"string"},"matchedFrom":{"type":"string"}}},"ReachesType":{"type":"object","required":["modules","asDefinedInRule"],"additionalProperties":false,"properties":{"modules":{"type":"array","items":{"type":"object","required":["source","via"],"additionalProperties":false,"properties":{"source":{"type":"string"},"via":{"type":"array","items":{"type":"string"}}}}},"asDefinedInRule":{"type":"string"}}},"DependenciesType":{"type":"array","items":{"$ref":"#/definitions/DependencyType"}},"DependencyType":{"type":"object","required":["circular","coreModule","couldNotResolve","dependencyTypes","exoticallyRequired","dynamic","followable","module","moduleSystem","resolved","valid"],"additionalProperties":false,"properties":{"module":{"type":"string"},"protocol":{"type":"string","enum":["data:","file:","node:"]},"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":{"type":"string"}},"moduleSystem":{"$ref":"#/definitions/ModuleSystemType"},"valid":{"type":"boolean"},"rules":{"type":"array","items":{"$ref":"#/definitions/RuleSummaryType"}},"instability":{"type":"number"}}},"DependencyTypeType":{"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","local","localmodule","npm-bundled","npm-dev","npm-no-pkg","npm-optional","npm-peer","npm-unknown","npm","require","triple-slash-amd-dependency","triple-slash-directive","triple-slash-file-reference","triple-slash-type-reference","type-import","type-only","undetermined","unknown"]},"ModuleSystemType":{"type":"string","enum":["cjs","es6","amd","tsd"]},"RuleSummaryType":{"type":"object","required":["name","severity"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"}}},"SeverityType":{"type":"string","enum":["error","warn","info","ignore"]},"FoldersType":{"type":"array","items":{"$ref":"#/definitions/FolderType"}},"FolderType":{"type":"object","required":["name","moduleCount"],"additionalProperties":false,"properties":{"name":{"type":"string"},"dependents":{"type":"array","items":{"type":"object","required":["name"],"additionalProperties":false,"properties":{"name":{"type":"string"}}}},"dependencies":{"type":"array","items":{"type":"object","required":["name","valid","circular"],"additionalProperties":false,"properties":{"name":{"type":"string"},"instability":{"type":"number"},"valid":{"type":"boolean"},"circular":{"type":"boolean"},"cycle":{"type":"array","items":{"type":"string"}},"rules":{"type":"array","items":{"$ref":"#/definitions/RuleSummaryType"}}}}},"moduleCount":{"type":"number"},"afferentCouplings":{"type":"number"},"efferentCouplings":{"type":"number"},"instability":{"type":"number"}}},"SummaryType":{"type":"object","required":["violations","error","warn","info","totalCruised","optionsUsed"],"additionalProperties":false,"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"}}},"ViolationsType":{"type":"array","items":{"$ref":"#/definitions/ViolationType"}},"ViolationType":{"type":"object","required":["from","to","rule"],"additionalProperties":false,"properties":{"from":{"type":"string"},"to":{"type":"string"},"type":{"$ref":"#/definitions/ViolationTypeType"},"rule":{"$ref":"#/definitions/RuleSummaryType"},"cycle":{"type":"array","items":{"type":"string"}},"via":{"type":"array","items":{"type":"string"}},"metrics":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"from":{"type":"object","required":["instability"],"additionalProperties":false,"properties":{"instability":{"type":"number"}}},"to":{"type":"object","required":["instability"],"additionalProperties":false,"properties":{"instability":{"type":"number"}}}}},"comment":{"type":"string"}}},"ViolationTypeType":{"type":"string","enum":["dependency","module","reachability","cycle","instability","folder"]},"RuleSetType":{"type":"object","additionalProperties":false,"properties":{"forbidden":{"type":"array","items":{"$ref":"#/definitions/ForbiddenRuleType"}},"allowed":{"type":"array","items":{"$ref":"#/definitions/AllowedRuleType"}},"allowedSeverity":{"$ref":"#/definitions/SeverityType"},"required":{"type":"array","items":{"$ref":"#/definitions/RequiredRuleType"}}}},"AllowedRuleType":{"oneOf":[{"$ref":"#/definitions/RegularAllowedRuleType"},{"$ref":"#/definitions/ReachabilityAllowedRuleType"}]},"RegularAllowedRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"comment":{"type":"string"},"scope":{"type":"string","enum":["module","folder"]},"from":{"$ref":"#/definitions/FromRestrictionType"},"to":{"$ref":"#/definitions/ToRestrictionType"}}},"ReachabilityAllowedRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"comment":{"type":"string"},"scope":{"type":"string","enum":["module","folder"]},"from":{"$ref":"#/definitions/ReachabilityFromRestrictionType"},"to":{"$ref":"#/definitions/ReachabilityToRestrictionType"}}},"ForbiddenRuleType":{"oneOf":[{"$ref":"#/definitions/RegularForbiddenRuleType"},{"$ref":"#/definitions/ReachabilityForbiddenRuleType"},{"$ref":"#/definitions/DependentsForbiddenRuleType"}]},"RegularForbiddenRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"from":{"$ref":"#/definitions/FromRestrictionType"},"to":{"$ref":"#/definitions/ToRestrictionType"}}},"DependentsForbiddenRuleType":{"type":"object","required":["module","from"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"module":{"$ref":"#/definitions/DependentsModuleRestrictionType"},"from":{"$ref":"#/definitions/DependentsFromRestrictionType"}}},"ReachabilityForbiddenRuleType":{"type":"object","required":["from","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"from":{"$ref":"#/definitions/ReachabilityFromRestrictionType"},"to":{"$ref":"#/definitions/ReachabilityToRestrictionType"}}},"RequiredRuleType":{"type":"object","required":["module","to"],"additionalProperties":false,"properties":{"name":{"type":"string"},"severity":{"$ref":"#/definitions/SeverityType"},"scope":{"type":"string","enum":["module","folder"]},"comment":{"type":"string"},"module":{"$ref":"#/definitions/RequiredModuleRestrictionType"},"to":{"$ref":"#/definitions/RequiredToRestrictionType"}}},"FromRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"orphan":{"type":"boolean"}}},"ReachabilityFromRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"ToRestrictionType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"couldNotResolve":{"type":"boolean"},"circular":{"type":"boolean"},"dynamic":{"type":"boolean"},"exoticallyRequired":{"type":"boolean"},"exoticRequire":{"$ref":"#/definitions/REAsStringsType"},"exoticRequireNot":{"$ref":"#/definitions/REAsStringsType"},"preCompilationOnly":{"type":"boolean"},"dependencyTypes":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}},"dependencyTypesNot":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}},"moreThanOneDependencyType":{"type":"boolean"},"license":{"$ref":"#/definitions/REAsStringsType"},"licenseNot":{"$ref":"#/definitions/REAsStringsType"},"via":{"$ref":"#/definitions/REAsStringsType"},"viaOnly":{"$ref":"#/definitions/REAsStringsType"},"viaNot":{"$ref":"#/definitions/REAsStringsType"},"viaSomeNot":{"$ref":"#/definitions/REAsStringsType"},"moreUnstable":{"type":"boolean"}}},"DependentsModuleRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"numberOfDependentsLessThan":{"type":"integer","minimum":0,"maximum":100},"numberOfDependentsMoreThan":{"type":"integer","minimum":0,"maximum":100}}},"DependentsFromRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"ReachabilityToRestrictionType":{"required":["reachable"],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"},"reachable":{"type":"boolean"}}},"RequiredModuleRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"pathNot":{"$ref":"#/definitions/REAsStringsType"}}},"RequiredToRestrictionType":{"required":[],"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"REAsStringsType":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"}}]},"OptionsUsedType":{"type":"object","additionalProperties":false,"properties":{"doNotFollow":{"$ref":"#/definitions/CompoundDoNotFollowType"},"exclude":{"$ref":"#/definitions/CompoundExcludeType"},"includeOnly":{"oneOf":[{"$ref":"#/definitions/REAsStringsType"},{"$ref":"#/definitions/CompoundIncludeOnlyType"}]},"focus":{"$ref":"#/definitions/CompoundFocusType"},"reaches":{"$ref":"#/definitions/CompoundReachesType"},"highlight":{"$ref":"#/definitions/CompoundHighlightType"},"knownViolations":{"$ref":"#/definitions/ViolationsType"},"collapse":{"type":"string"},"maxDepth":{"type":"integer","minimum":0,"maximum":99},"moduleSystems":{"$ref":"#/definitions/ModuleSystemsType"},"prefix":{"type":"string"},"preserveSymlinks":{"type":"boolean"},"combinedDependencies":{"type":"boolean"},"tsConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"}}},"tsPreCompilationDeps":{"oneOf":[{"type":"boolean"},{"type":"string","enum":["specify"]}]},"extraExtensionsToScan":{"type":"array","items":{"type":"string"}},"externalModuleResolutionStrategy":{"type":"string","enum":["node_modules","yarn-pnp"]},"builtInModules":{"type":"object","additionalProperties":false,"properties":{"override":{"type":"array","items":{"type":"string"}},"add":{"type":"array","items":{"type":"string"}}}},"forceDeriveDependents":{"type":"boolean"},"webpackConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"},"env":{"oneOf":[{"type":"object"},{"type":"string"}]},"arguments":{"type":"object"}}},"enhancedResolveOptions":{"type":"object","additionalProperties":false,"properties":{"exportsFields":{"type":"array","items":{"type":"string"}},"conditionNames":{"type":"array","items":{"type":"string"}},"extensions":{"type":"array","items":{"type":"string"}},"mainFields":{"type":"array","items":{"type":"string"}},"mainFiles":{"type":"array"},"aliasFields":{"type":"array","items":{"type":"string"}},"cachedInputFileSystem":{"type":"object","additionalProperties":false,"properties":{"cacheDuration":{"type":"integer","minimum":0,"maximum":1800000}}}}},"babelConfig":{"type":"object","additionalProperties":false,"properties":{"fileName":{"type":"string"}}},"parser":{"type":"string","enum":["acorn","swc","tsc"]},"exoticRequireStrings":{"type":"array","items":{"type":"string"}},"reporterOptions":{"$ref":"#/definitions/ReporterOptionsType"},"progress":{"type":"object","additionalProperties":false,"properties":{"type":{"type":"string","enum":["cli-feedback","performance-log","ndjson","none"]},"maximumLevel":{"type":"number","enum":[-1,40,50,60,70,80,99]}}},"metrics":{"type":"boolean"},"baseDir":{"type":"string"},"cache":{"oneOf":[{"type":"boolean","enum":[false]},{"$ref":"#/definitions/CacheOptionsType"}]},"args":{"type":"string"},"rulesFile":{"type":"string"},"outputTo":{"type":"string"},"outputType":{"$ref":"#/definitions/OutputType"}}},"ModuleSystemsType":{"type":"array","items":{"$ref":"#/definitions/ModuleSystemType"}},"OutputType":{"oneOf":[{"type":"string","enum":["json","html","dot","ddot","cdot","archi","fdot","flat","csv","err","err-long","err-html","teamcity","anon","text","metrics","markdown","mermaid","d2","null"]},{"type":"string","pattern":"^plugin:[^:]+$"}]},"CompoundExcludeType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"dynamic":{"type":"boolean"}}},"CompoundDoNotFollowType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"dependencyTypes":{"type":"array","items":{"$ref":"#/definitions/DependencyTypeType"}}}},"CompoundIncludeOnlyType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"CompoundFocusType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"},"depth":{"type":"number","minimum":1,"maximum":4}}},"CompoundReachesType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"CompoundHighlightType":{"type":"object","additionalProperties":false,"properties":{"path":{"$ref":"#/definitions/REAsStringsType"}}},"ReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"anon":{"$ref":"#/definitions/AnonReporterOptionsType"},"archi":{"$ref":"#/definitions/DotReporterOptionsType"},"dot":{"$ref":"#/definitions/DotReporterOptionsType"},"ddot":{"$ref":"#/definitions/DotReporterOptionsType"},"flat":{"$ref":"#/definitions/DotReporterOptionsType"},"markdown":{"$ref":"#/definitions/MarkdownReporterOptionsType"},"metrics":{"$ref":"#/definitions/MetricsReporterOptionsType"},"mermaid":{"$ref":"#/definitions/MermaidReporterOptionsType"},"text":{"$ref":"#/definitions/TextReporterOptionsType"}}},"AnonReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"wordlist":{"type":"array","items":{"type":"string"}}}},"MetricsReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"orderBy":{"type":"string","enum":["instability","moduleCount","afferentCouplings","efferentCouplings","name"]},"hideModules":{"type":"boolean"},"hideFolders":{"type":"boolean"}}},"MarkdownReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"showTitle":{"type":"boolean"},"title":{"type":"string"},"showSummary":{"type":"boolean"},"showSummaryHeader":{"type":"boolean"},"summaryHeader":{"type":"string"},"showStatsSummary":{"type":"boolean"},"showRulesSummary":{"type":"boolean"},"includeIgnoredInSummary":{"type":"boolean"},"showDetails":{"type":"boolean"},"includeIgnoredInDetails":{"type":"boolean"},"showDetailsHeader":{"type":"boolean"},"detailsHeader":{"type":"string"},"collapseDetails":{"type":"boolean"},"collapsedMessage":{"type":"string"},"noViolationsMessage":{"type":"string"},"showFooter":{"type":"boolean"}}},"MermaidReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"minify":{"type":"boolean"}}},"TextReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"highlightFocused":{"type":"boolean"}}},"DotReporterOptionsType":{"type":"object","additionalProperties":false,"properties":{"collapsePattern":{"$ref":"#/definitions/REAsStringsType"},"filters":{"$ref":"#/definitions/ReporterFiltersType"},"showMetrics":{"type":"boolean"},"theme":{"$ref":"#/definitions/DotThemeType"}}},"DotThemeType":{"type":"object","additionalProperties":false,"properties":{"replace":{"type":"boolean"},"graph":{"type":"object"},"node":{"type":"object"},"edge":{"type":"object"},"modules":{"$ref":"#/definitions/DotThemeArrayType"},"dependencies":{"$ref":"#/definitions/DotThemeArrayType"}}},"DotThemeArrayType":{"type":"array","items":{"$ref":"#/definitions/DotThemeEntryType"}},"DotThemeEntryType":{"type":"object","additionalProperties":false,"properties":{"criteria":{"type":"object"},"attributes":{"type":"object"}}},"ReporterFiltersType":{"type":"object","additionalProperties":false,"properties":{"exclude":{"$ref":"#/definitions/CompoundExcludeType"},"includeOnly":{"$ref":"#/definitions/CompoundIncludeOnlyType"},"focus":{"$ref":"#/definitions/CompoundFocusType"},"reaches":{"$ref":"#/definitions/CompoundReachesType"}}},"CacheOptionsType":{"type":"object","additionalProperties":false,"properties":{"folder":{"type":"string"},"strategy":{"$ref":"#/definitions/CacheStrategyType"},"compress":{"type":"boolean","default":false}}},"CacheStrategyType":{"type":"string","enum":["metadata","content"]},"RevisionDataType":{"type":"object","required":["SHA1","changes"],"properties":{"SHA1":{"type":"string"},"changes":{"type":"array","items":{"type":"object","required":["name","changeType"],"properties":{"name":{"type":"string"},"changeType":{"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"}}}}}}}} \ No newline at end of file diff --git a/src/validate/matchers.mjs b/src/validate/matchers.mjs index 13eddc208..43184bbac 100644 --- a/src/validate/matchers.mjs +++ b/src/validate/matchers.mjs @@ -3,18 +3,21 @@ import has from "lodash/has.js"; import { replaceGroupPlaceholders } from "#utl/regex-util.mjs"; import { intersects } from "#utl/array-util.mjs"; -// by their nature these dependency types always occur alongside other -// dependency types, like 'local' or 'npm'. Hence we exclude them from -// the 'duplicate dependency types' matcher. -const NOT_REALLY_DUPLICATES = new Set([ - "aliased", - "aliased-subpath-import", - "aliased-tsconfig", - "aliased-tsconfig-base-url", - "aliased-tsconfig-paths", - "aliased-webpack", - "aliased-workspace", - "type-only", +// by their nature some dependency types always occur alongside other +// dependency types - aliased, type-only, import, export will always +// occur paired with 'local', 'npm' or core. Hence we only include +// a subset of dependency types where we _care_ if they are duplicates +const DEPENDENCY_TYPE_DUPLICATES_THAT_MATTER = new Set([ + "core", + "local", + "localmodule", + "npm", + "npm-bundled", + "npm-dev", + "npm-no-pkg", + "npm-optional", + "npm-peer", + "npm-unknown", ]); function propertyEquals(pRule, pDependency, pProperty) { @@ -174,8 +177,8 @@ function matchesMoreThanOneDependencyType(pRule, pDependency) { if (has(pRule.to, "moreThanOneDependencyType")) { return ( pRule.to.moreThanOneDependencyType === - pDependency.dependencyTypes.filter( - (pDependencyType) => !NOT_REALLY_DUPLICATES.has(pDependencyType), + pDependency.dependencyTypes.filter((pDependencyType) => + DEPENDENCY_TYPE_DUPLICATES_THAT_MATTER.has(pDependencyType), ).length > 1 ); diff --git a/test/cli/__fixtures__/alternate-basedir/expected.json b/test/cli/__fixtures__/alternate-basedir/expected.json index aa2dcae59..34d3f0116 100644 --- a/test/cli/__fixtures__/alternate-basedir/expected.json +++ b/test/cli/__fixtures__/alternate-basedir/expected.json @@ -17,6 +17,7 @@ "totalCruised": 1, "totalDependenciesCruised": 0, "optionsUsed": { + "baseDir": "test/cli/__fixtures__/alternate-basedir", "combinedDependencies": false, "doNotFollow": { "path": "node_modules" @@ -29,8 +30,7 @@ "outputType": "json", "preserveSymlinks": false, "tsPreCompilationDeps": false, - "args": "src", - "baseDir": "test/cli/__fixtures__/alternate-basedir" + "args": "src" }, "ruleSetUsed": {} } diff --git a/test/cli/__fixtures__/babel/babel-es6-result.json b/test/cli/__fixtures__/babel/babel-es6-result.json index 148770660..b895a0a3d 100644 --- a/test/cli/__fixtures__/babel/babel-es6-result.json +++ b/test/cli/__fixtures__/babel/babel-es6-result.json @@ -8,11 +8,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/babel/es6/src/shared/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -40,11 +40,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/babel/es6/src/shared/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -64,7 +64,11 @@ "totalCruised": 3, "totalDependenciesCruised": 2, "optionsUsed": { + "babelConfig": { + "fileName": "test/cli/__fixtures__/babel/es6/babelrc.valid.json" + }, "combinedDependencies": false, + "exoticRequireStrings": [], "externalModuleResolutionStrategy": "node_modules", "metrics": false, "moduleSystems": ["es6", "cjs", "tsd", "amd"], @@ -75,10 +79,6 @@ "webpackConfig": { "fileName": "test/cli/__fixtures__/babel/es6/webpack-cache-bust.config.js" }, - "babelConfig": { - "fileName": "test/cli/__fixtures__/babel/es6/babelrc.valid.json" - }, - "exoticRequireStrings": [], "args": "test/cli/__fixtures__/babel/es6/src" }, "ruleSetUsed": {} diff --git a/test/cli/__fixtures__/babel/babel-ts-result.json b/test/cli/__fixtures__/babel/babel-ts-result.json index 308d4afc7..26260ba7d 100644 --- a/test/cli/__fixtures__/babel/babel-ts-result.json +++ b/test/cli/__fixtures__/babel/babel-ts-result.json @@ -8,11 +8,11 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "import"], "resolved": "test/cli/__fixtures__/babel/ts/src/shared/index.ts", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -40,11 +40,11 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "import"], "resolved": "test/cli/__fixtures__/babel/ts/src/shared/index.ts", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -62,11 +62,11 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["unknown"], "resolved": "react", "coreModule": false, "followable": false, "couldNotResolve": true, - "dependencyTypes": ["unknown"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -110,11 +110,11 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "import"], "resolved": "test/cli/__fixtures__/babel/ts/src/something/home.ts", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -124,11 +124,11 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "import"], "resolved": "test/cli/__fixtures__/babel/ts/src/something/routes-config.ts", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -138,11 +138,11 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["unknown"], "resolved": "react", "coreModule": false, "followable": false, "couldNotResolve": true, - "dependencyTypes": ["unknown"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -152,11 +152,11 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["unknown"], "resolved": "react-router-dom", "coreModule": false, "followable": false, "couldNotResolve": true, - "dependencyTypes": ["unknown"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -190,7 +190,11 @@ "totalCruised": 8, "totalDependenciesCruised": 7, "optionsUsed": { + "babelConfig": { + "fileName": "test/cli/__fixtures__/babel/ts/babelrc.json" + }, "combinedDependencies": false, + "exoticRequireStrings": [], "externalModuleResolutionStrategy": "node_modules", "metrics": false, "moduleSystems": ["es6", "cjs", "tsd", "amd"], @@ -201,10 +205,6 @@ "webpackConfig": { "fileName": "test/cli/__fixtures__/babel/ts/webpack-cache-bust.config.js" }, - "babelConfig": { - "fileName": "test/cli/__fixtures__/babel/ts/babelrc.json" - }, - "exoticRequireStrings": [], "args": "test/cli/__fixtures__/babel/ts/src" }, "ruleSetUsed": {} diff --git a/test/cli/__fixtures__/cjs.dir.filtered.json b/test/cli/__fixtures__/cjs.dir.filtered.json index 4db84bef7..6b0a68d4e 100644 --- a/test/cli/__fixtures__/cjs.dir.filtered.json +++ b/test/cli/__fixtures__/cjs.dir.filtered.json @@ -8,11 +8,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -28,7 +28,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dependencies": [], "dependents": [ "test/cli/__fixtures__/cjs/one_only_one.js", @@ -48,11 +48,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -70,11 +70,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/one_only_one.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -84,11 +84,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/one_only_two.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -98,11 +98,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/shared.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -112,11 +112,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/sub/dir.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -126,11 +126,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "fs", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -146,7 +146,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dependencies": [], "dependents": ["test/cli/__fixtures__/cjs/root_one.js"], "orphan": false, @@ -160,11 +160,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -185,11 +185,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/sub/depindir.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -199,11 +199,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -224,11 +224,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -246,11 +246,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/shared.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -260,11 +260,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/somedata.json", "coreModule": false, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -274,11 +274,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/two_only_one.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -288,11 +288,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "http", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -308,7 +308,7 @@ "coreModule": false, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dependencies": [], "dependents": ["test/cli/__fixtures__/cjs/root_two.js"], "orphan": false, @@ -320,7 +320,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dependencies": [], "dependents": ["test/cli/__fixtures__/cjs/root_two.js"], "orphan": false, @@ -334,11 +334,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/sub/dir.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -358,10 +358,12 @@ "totalCruised": 12, "totalDependenciesCruised": 16, "optionsUsed": { + "baseDir": ".", "combinedDependencies": false, "exclude": { "path": "node_modules" }, + "exoticRequireStrings": [], "externalModuleResolutionStrategy": "node_modules", "metrics": false, "moduleSystems": ["es6", "cjs", "tsd", "amd"], @@ -369,7 +371,6 @@ "outputType": "json", "preserveSymlinks": false, "tsPreCompilationDeps": false, - "exoticRequireStrings": [], "args": "test/cli/__fixtures__/cjs" } } diff --git a/test/cli/__fixtures__/cjs.dir.json b/test/cli/__fixtures__/cjs.dir.json index ca8b56734..e408a3b0f 100644 --- a/test/cli/__fixtures__/cjs.dir.json +++ b/test/cli/__fixtures__/cjs.dir.json @@ -26,11 +26,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/node_modules/somemodule/src/moar-javascript.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -40,11 +40,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["npm-no-pkg", "require"], "resolved": "test/cli/__fixtures__/cjs/node_modules/somemodule/node_modules/someothermodule/main.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["npm-no-pkg"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -62,11 +62,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -82,7 +82,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dependencies": [], "dependents": [ "test/cli/__fixtures__/cjs/one_only_one.js", @@ -102,11 +102,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -124,11 +124,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/one_only_one.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -138,11 +138,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/one_only_two.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -152,11 +152,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/shared.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -166,11 +166,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/sub/dir.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -180,11 +180,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "fs", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -194,11 +194,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["npm-no-pkg", "require"], "resolved": "test/cli/__fixtures__/cjs/node_modules/somemodule/src/somemodule.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["npm-no-pkg"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -214,7 +214,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dependencies": [], "dependents": ["test/cli/__fixtures__/cjs/root_one.js"], "orphan": false, @@ -228,11 +228,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -253,11 +253,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/sub/depindir.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -267,11 +267,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -292,11 +292,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -314,11 +314,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/shared.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -328,11 +328,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/somedata.json", "coreModule": false, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -342,11 +342,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/two_only_one.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -356,11 +356,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "http", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -376,7 +376,7 @@ "coreModule": false, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dependencies": [], "dependents": ["test/cli/__fixtures__/cjs/root_two.js"], "orphan": false, @@ -388,7 +388,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dependencies": [], "dependents": ["test/cli/__fixtures__/cjs/root_two.js"], "orphan": false, @@ -402,11 +402,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/sub/dir.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/cli/__fixtures__/cjs.file.json b/test/cli/__fixtures__/cjs.file.json index 7c3081566..1fae98b02 100644 --- a/test/cli/__fixtures__/cjs.file.json +++ b/test/cli/__fixtures__/cjs.file.json @@ -8,11 +8,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/one_only_one.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -22,11 +22,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/one_only_two.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -36,11 +36,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/shared.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -50,11 +50,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/sub/dir.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -64,11 +64,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "fs", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -78,11 +78,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["npm-no-pkg", "require"], "resolved": "test/cli/__fixtures__/cjs/node_modules/somemodule/src/somemodule.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["npm-no-pkg"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -98,7 +98,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dependencies": [], "dependents": ["test/cli/__fixtures__/cjs/root_one.js"], "orphan": false, @@ -112,11 +112,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -132,7 +132,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dependencies": [], "dependents": [ "test/cli/__fixtures__/cjs/one_only_one.js", @@ -152,11 +152,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -174,11 +174,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -196,11 +196,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/sub/depindir.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -210,11 +210,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -232,11 +232,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -254,11 +254,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/node_modules/somemodule/src/moar-javascript.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -268,11 +268,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["npm-no-pkg", "require"], "resolved": "test/cli/__fixtures__/cjs/node_modules/somemodule/node_modules/someothermodule/main.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["npm-no-pkg"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/cli/__fixtures__/dynamic-import-nok.json b/test/cli/__fixtures__/dynamic-import-nok.json index 5f2154377..1b70a0fcc 100644 --- a/test/cli/__fixtures__/dynamic-import-nok.json +++ b/test/cli/__fixtures__/dynamic-import-nok.json @@ -8,11 +8,11 @@ "moduleSystem": "es6", "dynamic": true, "exoticallyRequired": false, + "dependencyTypes": ["local", "dynamic-import"], "resolved": "test/cli/__fixtures__/typescriptconfig/cli-dynamic-imports/import_this.ts", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/cli/__fixtures__/dynamic-import-ok.json b/test/cli/__fixtures__/dynamic-import-ok.json index 5e909ec5d..4ad37ce28 100644 --- a/test/cli/__fixtures__/dynamic-import-ok.json +++ b/test/cli/__fixtures__/dynamic-import-ok.json @@ -8,11 +8,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/typescriptconfig/cli-dynamic-imports/import_this.ts", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/cli/__fixtures__/multiple-in-one-go.json b/test/cli/__fixtures__/multiple-in-one-go.json index 822155ecd..1ee8d64cb 100644 --- a/test/cli/__fixtures__/multiple-in-one-go.json +++ b/test/cli/__fixtures__/multiple-in-one-go.json @@ -8,11 +8,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -28,7 +28,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dependencies": [], "dependents": [ "test/cli/__fixtures__/cjs/sub/depindir.js", @@ -45,11 +45,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["local", "require"], "resolved": "test/cli/__fixtures__/cjs/sub/depindir.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -59,11 +59,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["core", "require"], "resolved": "path", "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -88,11 +88,11 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["unknown"], "resolved": "./not-at-home", "coreModule": false, "followable": false, "couldNotResolve": true, - "dependencyTypes": ["unknown"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -102,11 +102,11 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["unknown"], "resolved": "./this/path/does/not/exist", "coreModule": false, "followable": false, "couldNotResolve": true, - "dependencyTypes": ["unknown"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/cli/__fixtures__/typescript-path-resolution.json b/test/cli/__fixtures__/typescript-path-resolution.json index ba215fc31..ae491123a 100644 --- a/test/cli/__fixtures__/typescript-path-resolution.json +++ b/test/cli/__fixtures__/typescript-path-resolution.json @@ -8,16 +8,17 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, - "resolved": "test/cli/__fixtures__/typescriptconfig/cli-config-with-path/src/shared/index.ts", - "coreModule": false, - "followable": true, - "couldNotResolve": false, "dependencyTypes": [ "aliased", "aliased-tsconfig", "aliased-tsconfig-base-url", - "local" + "local", + "require" ], + "resolved": "test/cli/__fixtures__/typescriptconfig/cli-config-with-path/src/shared/index.ts", + "coreModule": false, + "followable": true, + "couldNotResolve": false, "matchesDoNotFollow": false, "circular": false, "valid": true @@ -45,16 +46,17 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, - "resolved": "test/cli/__fixtures__/typescriptconfig/cli-config-with-path/src/shared/index.ts", - "coreModule": false, - "followable": true, - "couldNotResolve": false, "dependencyTypes": [ "aliased", "aliased-tsconfig", "aliased-tsconfig-base-url", - "local" + "local", + "require" ], + "resolved": "test/cli/__fixtures__/typescriptconfig/cli-config-with-path/src/shared/index.ts", + "coreModule": false, + "followable": true, + "couldNotResolve": false, "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/cli/__fixtures__/webpack-config-alias-cruiser-config.json b/test/cli/__fixtures__/webpack-config-alias-cruiser-config.json index 159094479..ef6d5142a 100644 --- a/test/cli/__fixtures__/webpack-config-alias-cruiser-config.json +++ b/test/cli/__fixtures__/webpack-config-alias-cruiser-config.json @@ -17,11 +17,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["aliased", "aliased-webpack", "local", "require"], "resolved": "test/cli/__fixtures__/webpackconfig/aliassy/src/configspullen/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-webpack", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -31,11 +31,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["aliased", "aliased-webpack", "local", "require"], "resolved": "test/cli/__fixtures__/webpackconfig/aliassy/src/configspullen/someconfig.json", "coreModule": false, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-webpack", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -51,7 +51,7 @@ "coreModule": false, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["aliased", "aliased-webpack", "local"], + "dependencyTypes": ["aliased", "aliased-webpack", "local", "require"], "dependencies": [], "dependents": [ "test/cli/__fixtures__/webpackconfig/aliassy/src/index.js" diff --git a/test/cli/__fixtures__/webpack-config-alias.json b/test/cli/__fixtures__/webpack-config-alias.json index f6211a7c4..382fffbb6 100644 --- a/test/cli/__fixtures__/webpack-config-alias.json +++ b/test/cli/__fixtures__/webpack-config-alias.json @@ -17,11 +17,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["aliased", "aliased-webpack", "local", "require"], "resolved": "test/cli/__fixtures__/webpackconfig/aliassy/src/configspullen/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-webpack", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -31,11 +31,11 @@ "moduleSystem": "cjs", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": ["aliased", "aliased-webpack", "local", "require"], "resolved": "test/cli/__fixtures__/webpackconfig/aliassy/src/configspullen/someconfig.json", "coreModule": false, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-webpack", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -51,7 +51,7 @@ "coreModule": false, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["aliased", "aliased-webpack", "local"], + "dependencyTypes": ["aliased", "aliased-webpack", "local", "require"], "dependencies": [], "dependents": [ "test/cli/__fixtures__/webpackconfig/aliassy/src/index.js" diff --git a/test/cli/__fixtures__/workspaces-mono-repo-aliases/expected.json b/test/cli/__fixtures__/workspaces-mono-repo-aliases/expected.json index e735cd285..897263412 100644 --- a/test/cli/__fixtures__/workspaces-mono-repo-aliases/expected.json +++ b/test/cli/__fixtures__/workspaces-mono-repo-aliases/expected.json @@ -8,11 +8,11 @@ "module": "../../libs/aap", "moduleSystem": "es6", "exoticallyRequired": false, + "dependencyTypes": ["local", "import"], "resolved": "libs/aap/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -37,11 +37,16 @@ "module": "#mies/index.js", "moduleSystem": "es6", "exoticallyRequired": false, + "dependencyTypes": [ + "aliased", + "aliased-subpath-import", + "local", + "import" + ], "resolved": "libs/mies/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-subpath-import", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -66,16 +71,17 @@ "module": "libs/wim", "moduleSystem": "es6", "exoticallyRequired": false, - "resolved": "libs/wim/index.js", - "coreModule": false, - "followable": true, - "couldNotResolve": false, "dependencyTypes": [ "aliased", "aliased-tsconfig", "aliased-tsconfig-base-url", - "local" + "local", + "import" ], + "resolved": "libs/wim/index.js", + "coreModule": false, + "followable": true, + "couldNotResolve": false, "matchesDoNotFollow": false, "circular": false, "valid": true @@ -100,16 +106,17 @@ "module": "@modules/zus/index.js", "moduleSystem": "es6", "exoticallyRequired": false, - "resolved": "libs/zus/index.js", - "coreModule": false, - "followable": true, - "couldNotResolve": false, "dependencyTypes": [ "aliased", "aliased-tsconfig", "aliased-tsconfig-paths", - "local" + "local", + "import" ], + "resolved": "libs/zus/index.js", + "coreModule": false, + "followable": true, + "couldNotResolve": false, "matchesDoNotFollow": false, "circular": false, "valid": true @@ -137,16 +144,17 @@ "module": "@sister", "moduleSystem": "es6", "exoticallyRequired": false, - "resolved": "libs/zus/index.js", - "coreModule": false, - "followable": true, - "couldNotResolve": false, "dependencyTypes": [ "aliased", "aliased-tsconfig", "aliased-tsconfig-paths", - "local" + "local", + "import" ], + "resolved": "libs/zus/index.js", + "coreModule": false, + "followable": true, + "couldNotResolve": false, "matchesDoNotFollow": false, "circular": false, "valid": true @@ -164,11 +172,16 @@ "module": "noot/index.js", "moduleSystem": "es6", "exoticallyRequired": false, + "dependencyTypes": [ + "aliased", + "aliased-workspace", + "local", + "import" + ], "resolved": "libs/noot/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-workspace", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/cli/__fixtures__/workspaces-mono-repo/expected.json b/test/cli/__fixtures__/workspaces-mono-repo/expected.json index e54e8d87d..cd85e858b 100644 --- a/test/cli/__fixtures__/workspaces-mono-repo/expected.json +++ b/test/cli/__fixtures__/workspaces-mono-repo/expected.json @@ -8,11 +8,16 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": [ + "aliased", + "aliased-workspace", + "local", + "import" + ], "resolved": "packages/事物/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-workspace", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -22,11 +27,16 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": [ + "aliased", + "aliased-workspace", + "local", + "import" + ], "resolved": "packages/chose/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-workspace", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -36,11 +46,16 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": [ + "aliased", + "aliased-workspace", + "local", + "import" + ], "resolved": "packages/ding/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-workspace", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -50,11 +65,16 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": [ + "aliased", + "aliased-workspace", + "local", + "import" + ], "resolved": "libs/books/index.mjs", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-workspace", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -64,11 +84,16 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": [ + "aliased", + "aliased-workspace", + "local", + "import" + ], "resolved": "libs/bücher/index.mjs", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-workspace", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -78,11 +103,16 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": [ + "aliased", + "aliased-workspace", + "local", + "import" + ], "resolved": "libs/livres/index.mjs", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-workspace", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -92,11 +122,16 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": [ + "aliased", + "aliased-workspace", + "local", + "import" + ], "resolved": "libs/图书/index.mjs", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-workspace", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -106,11 +141,16 @@ "moduleSystem": "es6", "dynamic": false, "exoticallyRequired": false, + "dependencyTypes": [ + "aliased", + "aliased-workspace", + "local", + "import" + ], "resolved": "packages/thing/index.js", "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["aliased", "aliased-workspace", "local"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/extract/__fixtures__/amd-bang-CJSWrapper.json b/test/extract/__fixtures__/amd-bang-CJSWrapper.json index 95100cea1..1fcd207b2 100644 --- a/test/extract/__fixtures__/amd-bang-CJSWrapper.json +++ b/test/extract/__fixtures__/amd-bang-CJSWrapper.json @@ -2,7 +2,7 @@ { "resolved": "test/extract/__mocks__/amd-bangs/root_one.js", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -26,7 +26,7 @@ { "resolved": "test/extract/__mocks__/amd-bangs/somedata.json", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-require"], "dynamic": false, "followable": false, "exoticallyRequired": false, diff --git a/test/extract/__fixtures__/amd-bang-requirejs.json b/test/extract/__fixtures__/amd-bang-requirejs.json index 66ce3375e..6e0f6ef05 100644 --- a/test/extract/__fixtures__/amd-bang-requirejs.json +++ b/test/extract/__fixtures__/amd-bang-requirejs.json @@ -14,7 +14,7 @@ { "resolved": "test/extract/__mocks__/amd-bangs/hurray.js", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -50,7 +50,7 @@ { "resolved": "fs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "amd-define"], "dynamic": false, "followable": false, "exoticallyRequired": false, @@ -62,7 +62,7 @@ { "resolved": "test/extract/__mocks__/amd-bangs/somedata.json", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": false, "exoticallyRequired": false, diff --git a/test/extract/__fixtures__/amd.json b/test/extract/__fixtures__/amd.json index 55f1268ad..1b3183587 100644 --- a/test/extract/__fixtures__/amd.json +++ b/test/extract/__fixtures__/amd.json @@ -10,7 +10,7 @@ "resolved": "test/extract/__mocks__/amd/root_one.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -22,7 +22,7 @@ "resolved": "test/extract/__mocks__/amd/root_two.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -42,7 +42,7 @@ "resolved": "test/extract/__mocks__/amd/module-as-a-function.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -54,7 +54,7 @@ "resolved": "test/extract/__mocks__/amd/root_one.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -74,7 +74,7 @@ "resolved": "test/extract/__mocks__/amd/root_one.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -86,7 +86,7 @@ "resolved": "test/extract/__mocks__/amd/root_two.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -98,7 +98,7 @@ "resolved": "test/extract/__mocks__/amd/sub/dir.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -119,7 +119,7 @@ "resolved": "test/extract/__mocks__/amd/root_one.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -131,7 +131,7 @@ "resolved": "test/extract/__mocks__/amd/root_two.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -151,7 +151,7 @@ "resolved": "test/extract/__mocks__/amd/root_one.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -163,7 +163,7 @@ "resolved": "test/extract/__mocks__/amd/root_one.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -175,7 +175,7 @@ "resolved": "test/extract/__mocks__/amd/root_two.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -187,7 +187,7 @@ "resolved": "test/extract/__mocks__/amd/root_two.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -231,7 +231,7 @@ "resolved": "test/extract/__mocks__/amd/sub/local-module-in-drag.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["undetermined"], + "dependencyTypes": ["undetermined", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -241,7 +241,7 @@ ] }, { - "title": "looks like an amd but isnt", + "title": "looks like an amd but isn't", "input": { "fileName": "test/extract/__mocks__/amd/looks-like-amd-but-isnt.js" }, @@ -258,7 +258,7 @@ "resolved": "test/extract/__mocks__/symlinkTarget/index.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -279,7 +279,7 @@ "resolved": "test/extract/__mocks__/symlinked/index.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -299,7 +299,7 @@ "resolved": "test/extract/__mocks__/symlinkTarget/index.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -320,7 +320,7 @@ "resolved": "test/extract/__mocks__/symlinkTarget/index.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "amd-define"], "dynamic": false, "followable": true, "exoticallyRequired": false, diff --git a/test/extract/__fixtures__/cache-busting-first-tree.json b/test/extract/__fixtures__/cache-busting-first-tree.json index c0b1dcb39..b21ca5f30 100644 --- a/test/extract/__fixtures__/cache-busting-first-tree.json +++ b/test/extract/__fixtures__/cache-busting-first-tree.json @@ -8,7 +8,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./local", "moduleSystem": "cjs", @@ -20,7 +20,7 @@ "followable": false, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["npm"], + "dependencyTypes": ["npm", "import"], "dynamic": false, "module": "different-in-other-tree", "moduleSystem": "es6", @@ -32,7 +32,7 @@ "followable": false, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "module": "path", "moduleSystem": "es6", @@ -46,7 +46,7 @@ "coreModule": false, "couldNotResolve": false, "matchesDoNotFollow": true, - "dependencyTypes": ["npm"], + "dependencyTypes": ["npm", "import"], "dependencies": [] }, { @@ -55,7 +55,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dependencies": [] }, { diff --git a/test/extract/__fixtures__/cache-busting-second-tree.json b/test/extract/__fixtures__/cache-busting-second-tree.json index fad08bcfc..c3bb4608f 100644 --- a/test/extract/__fixtures__/cache-busting-second-tree.json +++ b/test/extract/__fixtures__/cache-busting-second-tree.json @@ -8,7 +8,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./local", "moduleSystem": "cjs", @@ -20,7 +20,7 @@ "followable": false, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["npm"], + "dependencyTypes": ["npm", "import"], "dynamic": false, "module": "different-in-other-tree", "moduleSystem": "es6", @@ -32,7 +32,7 @@ "followable": false, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "module": "fs", "moduleSystem": "es6", @@ -46,7 +46,7 @@ "coreModule": false, "couldNotResolve": false, "matchesDoNotFollow": true, - "dependencyTypes": ["npm"], + "dependencyTypes": ["npm", "import"], "dependencies": [] }, { @@ -55,7 +55,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dependencies": [] }, { @@ -67,7 +67,7 @@ "followable": false, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "module": "http", "moduleSystem": "es6", @@ -81,7 +81,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dependencies": [] } ] diff --git a/test/extract/__fixtures__/cjs.json b/test/extract/__fixtures__/cjs.json index c40eb4b8c..b40608893 100644 --- a/test/extract/__fixtures__/cjs.json +++ b/test/extract/__fixtures__/cjs.json @@ -12,7 +12,7 @@ "resolved": "test/extract/__mocks__/cjs/one_only_one.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -24,7 +24,7 @@ "resolved": "test/extract/__mocks__/cjs/one_only_two.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -36,7 +36,7 @@ "resolved": "test/extract/__mocks__/cjs/shared.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -48,7 +48,7 @@ "resolved": "test/extract/__mocks__/cjs/sub/dir.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -60,7 +60,7 @@ "resolved": "node_modules/commander/index.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["npm"], + "dependencyTypes": ["npm", "require"], "dynamic": false, "license": "MIT", "followable": true, @@ -73,7 +73,7 @@ "resolved": "fs", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "followable": false, "exoticallyRequired": false, @@ -100,7 +100,7 @@ "resolved": "test/extract/__mocks__/cjs/empty.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -112,7 +112,7 @@ "resolved": "fs", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "followable": false, "exoticallyRequired": false, @@ -132,7 +132,7 @@ "resolved": "os", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "followable": false, "exoticallyRequired": false, @@ -152,7 +152,7 @@ "resolved": "os", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "followable": false, "exoticallyRequired": false, @@ -172,7 +172,7 @@ "resolved": "test/extract/__mocks__/cjs/direct-require.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -199,7 +199,7 @@ "resolved": "test/extract/__mocks__/cjs/sub/not-the-index.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -219,7 +219,7 @@ "resolved": "test/extract/__mocks__/cjs/sub/node_modules/some-module/main.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["npm-no-pkg"], + "dependencyTypes": ["npm-no-pkg", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -271,7 +271,7 @@ "resolved": "test/extract/__mocks__/symlinkTarget/index.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -292,7 +292,7 @@ "resolved": "test/extract/__mocks__/symlinked/index.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -313,7 +313,7 @@ "resolved": "test/extract/__mocks__/symlinkTarget/index.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -333,7 +333,7 @@ "resolved": "test/extract/__mocks__/symlinkTarget/index.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -355,7 +355,7 @@ "resolved": "../symlinkTarget/index.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, diff --git a/test/extract/__fixtures__/coffee.json b/test/extract/__fixtures__/coffee.json index 53ad72d47..fb3a007e0 100644 --- a/test/extract/__fixtures__/coffee.json +++ b/test/extract/__fixtures__/coffee.json @@ -10,7 +10,7 @@ "resolved": "test/extract/__mocks__/coffee/javascriptThing.js", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -22,7 +22,7 @@ "resolved": "test/extract/__mocks__/coffee/sub/index.coffee", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -34,7 +34,7 @@ "resolved": "test/extract/__mocks__/coffee/sub/kaching.litcoffee", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -46,7 +46,7 @@ "resolved": "test/extract/__mocks__/coffee/sub/willBeReExported.coffee.md", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "export"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -58,7 +58,7 @@ "resolved": "path", "moduleSystem": "es6", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "followable": false, "exoticallyRequired": false, diff --git a/test/extract/__fixtures__/donotfollow-dependency-types.json b/test/extract/__fixtures__/donotfollow-dependency-types.json index 848bea954..2b5035842 100644 --- a/test/extract/__fixtures__/donotfollow-dependency-types.json +++ b/test/extract/__fixtures__/donotfollow-dependency-types.json @@ -9,7 +9,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./dofollowstuffinhere", @@ -22,7 +22,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./donotfollowonceinthisfolder", @@ -35,7 +35,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./donotfollowonceinthisfolder/meta", @@ -48,7 +48,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["npm"], + "dependencyTypes": ["npm", "require"], "dynamic": false, "module": "in-package-json", @@ -61,7 +61,7 @@ "followable": false, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["npm-no-pkg"], + "dependencyTypes": ["npm-no-pkg", "require"], "dynamic": false, "module": "not-in-package-json", @@ -76,7 +76,7 @@ "coreModule": false, "couldNotResolve": false, "matchesDoNotFollow": true, - "dependencyTypes": ["npm-no-pkg"], + "dependencyTypes": ["npm-no-pkg", "require"], "dependencies": [] }, @@ -90,7 +90,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "../donotfollowonceinthisfolder/meta", @@ -103,7 +103,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./callfromlocal", @@ -122,7 +122,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./notcalledfromoutside", @@ -151,7 +151,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "../dofollowstuffinhere", @@ -164,7 +164,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./notcalledfromoutside", diff --git a/test/extract/__fixtures__/donotfollow.json b/test/extract/__fixtures__/donotfollow.json index ad4f049c2..168fe5a7f 100644 --- a/test/extract/__fixtures__/donotfollow.json +++ b/test/extract/__fixtures__/donotfollow.json @@ -9,7 +9,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./dofollowstuffinhere", @@ -22,7 +22,7 @@ "followable": false, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./donotfollowonceinthisfolder", @@ -35,7 +35,7 @@ "followable": false, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./donotfollowonceinthisfolder/meta", @@ -50,7 +50,7 @@ "coreModule": false, "couldNotResolve": false, "matchesDoNotFollow": true, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dependencies": [] }, @@ -60,7 +60,7 @@ "coreModule": false, "couldNotResolve": false, "matchesDoNotFollow": true, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dependencies": [] }, @@ -74,7 +74,7 @@ "followable": false, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "../donotfollowonceinthisfolder/meta", @@ -87,7 +87,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./callfromlocal", diff --git a/test/extract/__fixtures__/es6.json b/test/extract/__fixtures__/es6.json index 18ef2ddec..9fe193031 100644 --- a/test/extract/__fixtures__/es6.json +++ b/test/extract/__fixtures__/es6.json @@ -10,7 +10,7 @@ "resolved": "node_modules/acorn/dist/acorn.js", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["npm"], + "dependencyTypes": ["npm", "import"], "dynamic": false, "license": "MIT", "followable": true, @@ -23,7 +23,7 @@ "resolved": "node_modules/eslint/lib/api.js", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["npm-dev"], + "dependencyTypes": ["npm-dev", "export"], "dynamic": false, "license": "MIT", "followable": true, @@ -36,7 +36,7 @@ "resolved": "node_modules/mocha/index.js", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["npm-dev"], + "dependencyTypes": ["npm-dev", "export"], "dynamic": false, "license": "MIT", "followable": true, @@ -49,7 +49,7 @@ "resolved": "os", "moduleSystem": "es6", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "followable": false, "exoticallyRequired": false, diff --git a/test/extract/__fixtures__/max-depth-0.json b/test/extract/__fixtures__/max-depth-0.json index d29d0165a..f4dd26b7d 100644 --- a/test/extract/__fixtures__/max-depth-0.json +++ b/test/extract/__fixtures__/max-depth-0.json @@ -9,7 +9,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneAndTwoDeep", "moduleSystem": "es6" @@ -21,7 +21,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneDeep", "moduleSystem": "es6" @@ -33,7 +33,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./sub/oneDeepInSub", "moduleSystem": "es6" @@ -45,7 +45,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "module": "os", "moduleSystem": "es6" @@ -58,7 +58,7 @@ "matchesDoNotFollow": false, "coreModule": true, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dependencies": [] }, { @@ -75,7 +75,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneAndTwoDeep", "moduleSystem": "es6" @@ -87,7 +87,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./twoDeep", "moduleSystem": "es6" @@ -104,7 +104,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./sub/threeDeepInSub", "moduleSystem": "cjs" @@ -121,7 +121,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "module": "os", "moduleSystem": "cjs" @@ -138,7 +138,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./twoDeepInSub", "moduleSystem": "es6" @@ -155,7 +155,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./threeDeepInSub", "moduleSystem": "cjs" diff --git a/test/extract/__fixtures__/max-depth-1.json b/test/extract/__fixtures__/max-depth-1.json index 60a663000..ff672172c 100644 --- a/test/extract/__fixtures__/max-depth-1.json +++ b/test/extract/__fixtures__/max-depth-1.json @@ -9,7 +9,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneAndTwoDeep", "moduleSystem": "es6" @@ -21,7 +21,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneDeep", "moduleSystem": "es6" @@ -33,7 +33,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./sub/oneDeepInSub", "moduleSystem": "es6" @@ -45,7 +45,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "module": "os", "moduleSystem": "es6" @@ -58,7 +58,7 @@ "matchesDoNotFollow": false, "coreModule": true, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dependencies": [] }, { diff --git a/test/extract/__fixtures__/max-depth-2.json b/test/extract/__fixtures__/max-depth-2.json index 70070f32d..de96758de 100644 --- a/test/extract/__fixtures__/max-depth-2.json +++ b/test/extract/__fixtures__/max-depth-2.json @@ -10,7 +10,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneAndTwoDeep", @@ -23,7 +23,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneDeep", @@ -36,7 +36,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./sub/oneDeepInSub", @@ -49,7 +49,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "module": "os", @@ -63,7 +63,7 @@ "matchesDoNotFollow": false, "coreModule": true, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dependencies": [] }, @@ -83,7 +83,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneAndTwoDeep", @@ -96,7 +96,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./twoDeep", @@ -120,7 +120,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./twoDeepInSub", diff --git a/test/extract/__fixtures__/max-depth-4.json b/test/extract/__fixtures__/max-depth-4.json index 4889a0e8d..0107e3c44 100644 --- a/test/extract/__fixtures__/max-depth-4.json +++ b/test/extract/__fixtures__/max-depth-4.json @@ -10,7 +10,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneAndTwoDeep", @@ -23,7 +23,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneDeep", @@ -36,7 +36,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./sub/oneDeepInSub", @@ -49,7 +49,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "module": "os", @@ -63,7 +63,7 @@ "matchesDoNotFollow": false, "coreModule": true, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dependencies": [] }, @@ -83,7 +83,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./oneAndTwoDeep", @@ -96,7 +96,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./twoDeep", @@ -115,7 +115,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./sub/threeDeepInSub", @@ -134,7 +134,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "module": "os", @@ -153,7 +153,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "module": "./twoDeepInSub", @@ -172,7 +172,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "module": "./threeDeepInSub", diff --git a/test/extract/__fixtures__/ts-types.json b/test/extract/__fixtures__/ts-types.json index 587b801da..686bb1370 100644 --- a/test/extract/__fixtures__/ts-types.json +++ b/test/extract/__fixtures__/ts-types.json @@ -10,7 +10,7 @@ "resolved": "test/extract/__mocks__/ts-types/things.ts", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -22,7 +22,7 @@ "resolved": "test/extract/__mocks__/ts-types/things.ts", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local", "type-only"], + "dependencyTypes": ["local", "type-only", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -42,7 +42,7 @@ "resolved": "test/extract/__mocks__/ts-types/things.ts", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -54,7 +54,7 @@ "resolved": "test/extract/__mocks__/ts-types/things.ts", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local", "type-only"], + "dependencyTypes": ["local", "type-only", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, diff --git a/test/extract/__fixtures__/ts.json b/test/extract/__fixtures__/ts.json index 5e34aaf7b..78aa3f5a6 100644 --- a/test/extract/__fixtures__/ts.json +++ b/test/extract/__fixtures__/ts.json @@ -10,7 +10,7 @@ "resolved": "test/extract/__mocks__/ts/javascriptThing.js", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -22,7 +22,7 @@ "resolved": "test/extract/__mocks__/ts/sub/index.ts", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -34,7 +34,7 @@ "resolved": "test/extract/__mocks__/ts/sub/kaching.ts", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -46,7 +46,7 @@ "resolved": "test/extract/__mocks__/ts/sub/willBeReExported.ts", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "export"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -58,7 +58,7 @@ "resolved": "fs", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "followable": false, "exoticallyRequired": false, @@ -70,7 +70,7 @@ "resolved": "path", "moduleSystem": "es6", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "followable": false, "exoticallyRequired": false, diff --git a/test/extract/__fixtures__/vue.json b/test/extract/__fixtures__/vue.json index 04eb4da4f..8fc9c0e94 100644 --- a/test/extract/__fixtures__/vue.json +++ b/test/extract/__fixtures__/vue.json @@ -10,7 +10,7 @@ "resolved": "test/extract/__mocks__/vue/javascriptThing.js", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -22,7 +22,7 @@ "resolved": "test/extract/__mocks__/vue/sub/index.ts", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -34,7 +34,7 @@ "resolved": "test/extract/__mocks__/vue/sub/kaching.ts", "moduleSystem": "es6", "coreModule": false, - "dependencyTypes": ["local", "type-only"], + "dependencyTypes": ["local", "type-only", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -46,7 +46,7 @@ "resolved": "path", "moduleSystem": "es6", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "followable": false, "exoticallyRequired": false, diff --git a/test/extract/__mocks__/exclude/dynamic/es/output.json b/test/extract/__mocks__/exclude/dynamic/es/output.json index 64e75ad44..7b17c9e2e 100644 --- a/test/extract/__mocks__/exclude/dynamic/es/output.json +++ b/test/extract/__mocks__/exclude/dynamic/es/output.json @@ -9,7 +9,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "module": "./index", "moduleSystem": "es6", "dynamic": false, @@ -28,7 +28,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "module": "./dynamic-to-circular", "moduleSystem": "es6", "dynamic": false, diff --git a/test/extract/__mocks__/exclude/path/es/output.json b/test/extract/__mocks__/exclude/path/es/output.json index 8467cc692..083e546f4 100644 --- a/test/extract/__mocks__/exclude/path/es/output.json +++ b/test/extract/__mocks__/exclude/path/es/output.json @@ -9,7 +9,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "module": "./index", "moduleSystem": "es6", "dynamic": false, diff --git a/test/extract/ast-extractors/extract-amd-deps.spec.mjs b/test/extract/ast-extractors/extract-amd-deps.spec.mjs index 9990e1516..c4750f4bb 100644 --- a/test/extract/ast-extractors/extract-amd-deps.spec.mjs +++ b/test/extract/ast-extractors/extract-amd-deps.spec.mjs @@ -27,12 +27,14 @@ describe("[U] ast-extractors/extract-AMD-deps", () => { moduleSystem: "amd", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["amd-define"], }, { module: "./root_two", moduleSystem: "amd", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["amd-define"], }, ]); }); @@ -51,12 +53,14 @@ describe("[U] ast-extractors/extract-AMD-deps", () => { moduleSystem: "amd", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["amd-require"], }, { module: "./two-with-require", moduleSystem: "amd", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["amd-require"], }, ]); }); @@ -76,6 +80,7 @@ describe("[U] ast-extractors/extract-AMD-deps", () => { dynamic: false, exoticRequire: "want", exoticallyRequired: true, + dependencyTypes: ["amd-exotic-require"], }, { module: "./two-with-want", @@ -83,6 +88,7 @@ describe("[U] ast-extractors/extract-AMD-deps", () => { dynamic: false, exoticRequire: "want", exoticallyRequired: true, + dependencyTypes: ["amd-exotic-require"], }, ]); }); diff --git a/test/extract/ast-extractors/extract-cjs-deps.spec.mjs b/test/extract/ast-extractors/extract-cjs-deps.spec.mjs index 7f9a48ddc..ef4ef6a57 100644 --- a/test/extract/ast-extractors/extract-cjs-deps.spec.mjs +++ b/test/extract/ast-extractors/extract-cjs-deps.spec.mjs @@ -25,6 +25,7 @@ describe("[U] ast-extractors/extract-cjs-deps", () => { moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, ]); }); @@ -44,6 +45,7 @@ describe("[U] ast-extractors/extract-cjs-deps", () => { dynamic: false, exoticRequire: "need", exoticallyRequired: true, + dependencyTypes: ["exotic-require"], }, ]); }); @@ -63,6 +65,7 @@ describe("[U] ast-extractors/extract-cjs-deps", () => { dynamic: false, exoticRequire: "window.require", exoticallyRequired: true, + dependencyTypes: ["exotic-require"], }, ]); }); @@ -87,6 +90,7 @@ describe("[U] ast-extractors/extract-cjs-deps", () => { moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, ]); }); diff --git a/test/extract/ast-extractors/extract-es6-deps.spec.mjs b/test/extract/ast-extractors/extract-es6-deps.spec.mjs index 01d1148bf..2e9f34c0f 100644 --- a/test/extract/ast-extractors/extract-es6-deps.spec.mjs +++ b/test/extract/ast-extractors/extract-es6-deps.spec.mjs @@ -19,6 +19,7 @@ describe("[U] ast-extractors/extract-ES6-deps", () => { moduleSystem: "es6", dynamic: true, exoticallyRequired: false, + dependencyTypes: ["dynamic-import"], }, ]); }); @@ -33,6 +34,7 @@ describe("[U] ast-extractors/extract-ES6-deps", () => { moduleSystem: "es6", dynamic: true, exoticallyRequired: false, + dependencyTypes: ["dynamic-import"], }, ]); }); @@ -61,6 +63,7 @@ describe("[U] ast-extractors/extract-ES6-deps", () => { moduleSystem: "es6", dynamic: true, exoticallyRequired: false, + dependencyTypes: ["dynamic-import"], }, ]); }); @@ -104,6 +107,7 @@ describe("[U] ast-extractors/extract-ES6-deps", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ]); }); @@ -134,18 +138,21 @@ export class ReplicateIssueComponent extends React.Component { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, { module: "✖", moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, { module: "✖", moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ]); }); diff --git a/test/extract/ast-extractors/extract-typescript-commonjs.spec.mjs b/test/extract/ast-extractors/extract-typescript-commonjs.spec.mjs index 50b072920..97fc20a22 100644 --- a/test/extract/ast-extractors/extract-typescript-commonjs.spec.mjs +++ b/test/extract/ast-extractors/extract-typescript-commonjs.spec.mjs @@ -13,6 +13,7 @@ describe("[U] ast-extractors/extract-typescript - regular commonjs require", () moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import-equals"], }, ], ); @@ -31,18 +32,21 @@ describe("[U] ast-extractors/extract-typescript - regular commonjs require", () moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, { module: "legit-two", moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, { module: "legit-three", moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, ], ); @@ -70,18 +74,21 @@ describe("[U] ast-extractors/extract-typescript - regular commonjs require", () moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, { module: "slodash", moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, { module: "hidash", moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, ], ); @@ -94,6 +101,7 @@ describe("[U] ast-extractors/extract-typescript - regular commonjs require", () moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, ]); }); diff --git a/test/extract/ast-extractors/extract-typescript-dynamic-imports.spec.mjs b/test/extract/ast-extractors/extract-typescript-dynamic-imports.spec.mjs index cc9de2495..426496337 100644 --- a/test/extract/ast-extractors/extract-typescript-dynamic-imports.spec.mjs +++ b/test/extract/ast-extractors/extract-typescript-dynamic-imports.spec.mjs @@ -13,6 +13,7 @@ describe("[U] ast-extractors/extract-typescript - dynamic imports", () => { moduleSystem: "es6", dynamic: true, exoticallyRequired: false, + dependencyTypes: ["dynamic-import"], }, ], ); @@ -29,6 +30,7 @@ describe("[U] ast-extractors/extract-typescript - dynamic imports", () => { moduleSystem: "es6", dynamic: true, exoticallyRequired: false, + dependencyTypes: ["dynamic-import"], }, ], ); diff --git a/test/extract/ast-extractors/extract-typescript-exotics.spec.mjs b/test/extract/ast-extractors/extract-typescript-exotics.spec.mjs index 7dbe174fc..95d91b2de 100644 --- a/test/extract/ast-extractors/extract-typescript-exotics.spec.mjs +++ b/test/extract/ast-extractors/extract-typescript-exotics.spec.mjs @@ -25,6 +25,7 @@ describe("[U] ast-extractors/extract-typescript - exotics", () => { dynamic: false, exoticRequire: "want", exoticallyRequired: true, + dependencyTypes: ["exotic-require"], }, ], ); @@ -43,6 +44,7 @@ describe("[U] ast-extractors/extract-typescript - exotics", () => { dynamic: false, exoticRequire: "window.require", exoticallyRequired: true, + dependencyTypes: ["exotic-require"], }, ], ); @@ -61,6 +63,7 @@ describe("[U] ast-extractors/extract-typescript - exotics", () => { dynamic: false, exoticRequire: "want", exoticallyRequired: true, + dependencyTypes: ["exotic-require"], }, { module: "./required-with-need", @@ -68,6 +71,7 @@ describe("[U] ast-extractors/extract-typescript - exotics", () => { dynamic: false, exoticRequire: "need", exoticallyRequired: true, + dependencyTypes: ["exotic-require"], }, ], ); diff --git a/test/extract/ast-extractors/extract-typescript-exports.spec.mjs b/test/extract/ast-extractors/extract-typescript-exports.spec.mjs index cd9e1dd1b..4984e6e74 100644 --- a/test/extract/ast-extractors/extract-typescript-exports.spec.mjs +++ b/test/extract/ast-extractors/extract-typescript-exports.spec.mjs @@ -9,6 +9,7 @@ describe("[U] ast-extractors/extract-typescript - re-exports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["export"], }, ]); }); @@ -24,6 +25,7 @@ describe("[U] ast-extractors/extract-typescript - re-exports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["export"], }, ], ); @@ -40,6 +42,7 @@ describe("[U] ast-extractors/extract-typescript - re-exports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["export"], }, ]); }); diff --git a/test/extract/ast-extractors/extract-typescript-imports.spec.mjs b/test/extract/ast-extractors/extract-typescript-imports.spec.mjs index 66d7b8dfb..53894332c 100644 --- a/test/extract/ast-extractors/extract-typescript-imports.spec.mjs +++ b/test/extract/ast-extractors/extract-typescript-imports.spec.mjs @@ -9,6 +9,7 @@ describe("[U] ast-extractors/extract-typescript - regular imports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ]); }); @@ -22,6 +23,7 @@ describe("[U] ast-extractors/extract-typescript - regular imports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ], ); @@ -38,6 +40,7 @@ describe("[U] ast-extractors/extract-typescript - regular imports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ], ); @@ -54,6 +57,7 @@ describe("[U] ast-extractors/extract-typescript - regular imports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ], ); diff --git a/test/extract/ast-extractors/extract-typescript-triple-slash-directives.spec.mjs b/test/extract/ast-extractors/extract-typescript-triple-slash-directives.spec.mjs index a5be2c5e4..dce8db34c 100644 --- a/test/extract/ast-extractors/extract-typescript-triple-slash-directives.spec.mjs +++ b/test/extract/ast-extractors/extract-typescript-triple-slash-directives.spec.mjs @@ -9,6 +9,10 @@ describe("[U] ast-extractors/extract-typescript - triple slash directives", () = moduleSystem: "tsd", dynamic: false, exoticallyRequired: false, + dependencyTypes: [ + "triple-slash-directive", + "triple-slash-file-reference", + ], }, ]); }); @@ -20,6 +24,10 @@ describe("[U] ast-extractors/extract-typescript - triple slash directives", () = moduleSystem: "tsd", dynamic: false, exoticallyRequired: false, + dependencyTypes: [ + "triple-slash-directive", + "triple-slash-type-reference", + ], }, ]); }); @@ -33,6 +41,10 @@ describe("[U] ast-extractors/extract-typescript - triple slash directives", () = moduleSystem: "tsd", dynamic: false, exoticallyRequired: false, + dependencyTypes: [ + "triple-slash-directive", + "triple-slash-amd-dependency", + ], }, ], ); diff --git a/test/extract/ast-extractors/extract-typescript-type-imports-and-exports.spec.mjs b/test/extract/ast-extractors/extract-typescript-type-imports-and-exports.spec.mjs index 1c0399a03..cb2efc8c9 100644 --- a/test/extract/ast-extractors/extract-typescript-type-imports-and-exports.spec.mjs +++ b/test/extract/ast-extractors/extract-typescript-type-imports-and-exports.spec.mjs @@ -9,6 +9,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["type-import"], }, ]); }); @@ -20,6 +21,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["type-import"], }, ]); }); @@ -35,6 +37,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["type-import"], }, ], ); @@ -51,6 +54,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["type-import"], }, ], ); @@ -80,7 +84,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, - dependencyTypes: ["type-only"], + dependencyTypes: ["type-only", "import"], }, ]); }); @@ -94,7 +98,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, - dependencyTypes: ["type-only"], + dependencyTypes: ["type-only", "import"], }, ], ); @@ -111,7 +115,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, - dependencyTypes: ["type-only"], + dependencyTypes: ["type-only", "import"], }, ], ); @@ -128,7 +132,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, - dependencyTypes: ["type-only"], + dependencyTypes: ["type-only", "import"], }, ], ); @@ -143,6 +147,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ], ); @@ -157,7 +162,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, - dependencyTypes: ["type-only"], + dependencyTypes: ["type-only", "export"], }, ], ); @@ -170,7 +175,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, - dependencyTypes: ["type-only"], + dependencyTypes: ["type-only", "export"], }, ]); }); @@ -184,7 +189,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, - dependencyTypes: ["type-only"], + dependencyTypes: ["type-only", "export"], }, ], ); @@ -199,6 +204,7 @@ describe("[U] ast-extractors/extract-typescript - type imports and exports", () moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["export"], }, ], ); diff --git a/test/extract/ast-extractors/extract-with-swc-commonjs.spec.mjs b/test/extract/ast-extractors/extract-with-swc-commonjs.spec.mjs index 63980b2e1..789692f8e 100644 --- a/test/extract/ast-extractors/extract-with-swc-commonjs.spec.mjs +++ b/test/extract/ast-extractors/extract-with-swc-commonjs.spec.mjs @@ -13,6 +13,7 @@ describe("[U] ast-extractors/extract-swc - regular commonjs require", () => { moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import-equals"], }, ], ); @@ -31,18 +32,21 @@ describe("[U] ast-extractors/extract-swc - regular commonjs require", () => { moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, { module: "legit-two", moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, { module: "legit-three", moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, ], ); @@ -70,18 +74,21 @@ describe("[U] ast-extractors/extract-swc - regular commonjs require", () => { moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, { module: "slodash", moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, { module: "hidash", moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, ], ); @@ -94,6 +101,7 @@ describe("[U] ast-extractors/extract-swc - regular commonjs require", () => { moduleSystem: "cjs", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["require"], }, ]); }); diff --git a/test/extract/ast-extractors/extract-with-swc-dynamic-imports.spec.mjs b/test/extract/ast-extractors/extract-with-swc-dynamic-imports.spec.mjs index 3edfbd2d7..ea474d6a4 100644 --- a/test/extract/ast-extractors/extract-with-swc-dynamic-imports.spec.mjs +++ b/test/extract/ast-extractors/extract-with-swc-dynamic-imports.spec.mjs @@ -13,6 +13,7 @@ describe("[U] ast-extractors/extract-swc - dynamic imports", () => { moduleSystem: "es6", dynamic: true, exoticallyRequired: false, + dependencyTypes: ["dynamic-import"], }, ], ); @@ -27,6 +28,7 @@ describe("[U] ast-extractors/extract-swc - dynamic imports", () => { moduleSystem: "es6", dynamic: true, exoticallyRequired: false, + dependencyTypes: ["dynamic-import"], }, ], ); diff --git a/test/extract/ast-extractors/extract-with-swc-exotics.spec.mjs b/test/extract/ast-extractors/extract-with-swc-exotics.spec.mjs index 0c5dc0a75..3f90b5b90 100644 --- a/test/extract/ast-extractors/extract-with-swc-exotics.spec.mjs +++ b/test/extract/ast-extractors/extract-with-swc-exotics.spec.mjs @@ -25,6 +25,7 @@ describe("[U] ast-extractors/extract-swc - exotics", () => { dynamic: false, exoticRequire: "want", exoticallyRequired: true, + dependencyTypes: ["exotic-require"], }, ], ); @@ -43,6 +44,7 @@ describe("[U] ast-extractors/extract-swc - exotics", () => { dynamic: false, exoticRequire: "window.require", exoticallyRequired: true, + dependencyTypes: ["exotic-require"], }, ], ); @@ -71,6 +73,7 @@ describe("[U] ast-extractors/extract-swc - exotics", () => { dynamic: false, exoticRequire: "want", exoticallyRequired: true, + dependencyTypes: ["exotic-require"], }, { module: "./required-with-need", @@ -78,6 +81,7 @@ describe("[U] ast-extractors/extract-swc - exotics", () => { dynamic: false, exoticRequire: "need", exoticallyRequired: true, + dependencyTypes: ["exotic-require"], }, ], ); diff --git a/test/extract/ast-extractors/extract-with-swc-exports.spec.mjs b/test/extract/ast-extractors/extract-with-swc-exports.spec.mjs index 42d4d023d..96678cc05 100644 --- a/test/extract/ast-extractors/extract-with-swc-exports.spec.mjs +++ b/test/extract/ast-extractors/extract-with-swc-exports.spec.mjs @@ -9,6 +9,7 @@ describe("[U] ast-extractors/extract-swc - re-exports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["export"], }, ]); }); @@ -24,6 +25,7 @@ describe("[U] ast-extractors/extract-swc - re-exports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["export"], }, ], ); @@ -40,6 +42,7 @@ describe("[U] ast-extractors/extract-swc - re-exports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["export"], }, ]); }); diff --git a/test/extract/ast-extractors/extract-with-swc-imports.spec.mjs b/test/extract/ast-extractors/extract-with-swc-imports.spec.mjs index 01d699fac..7ebdec314 100644 --- a/test/extract/ast-extractors/extract-with-swc-imports.spec.mjs +++ b/test/extract/ast-extractors/extract-with-swc-imports.spec.mjs @@ -9,6 +9,7 @@ describe("[U] ast-extractors/extract-swc - regular imports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ]); }); @@ -22,6 +23,7 @@ describe("[U] ast-extractors/extract-swc - regular imports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ], ); @@ -38,6 +40,7 @@ describe("[U] ast-extractors/extract-swc - regular imports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ], ); @@ -54,6 +57,7 @@ describe("[U] ast-extractors/extract-swc - regular imports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ], ); diff --git a/test/extract/ast-extractors/extract-with-swc-type-imports.spec.mjs b/test/extract/ast-extractors/extract-with-swc-type-imports.spec.mjs index 5fbcaae03..592f90f6b 100644 --- a/test/extract/ast-extractors/extract-with-swc-type-imports.spec.mjs +++ b/test/extract/ast-extractors/extract-with-swc-type-imports.spec.mjs @@ -57,6 +57,7 @@ describe("[U] ast-extractors/extract-swc - type imports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["type-import"], }, ], ); @@ -86,6 +87,7 @@ describe("[U] ast-extractors/extract-swc - type imports", () => { moduleSystem: "es6", dynamic: false, exoticallyRequired: false, + dependencyTypes: ["import"], }, ]); }); diff --git a/test/extract/get-dependencies.cjs.spec.mjs b/test/extract/get-dependencies.cjs.spec.mjs index d190418f4..ff57e09c6 100644 --- a/test/extract/get-dependencies.cjs.spec.mjs +++ b/test/extract/get-dependencies.cjs.spec.mjs @@ -88,7 +88,7 @@ describe("[I] extract/getDependencies - CommonJS - with bangs", () => { { resolved: "test/extract/__mocks__/cjs-bangs/dependency.js", coreModule: false, - dependencyTypes: ["local"], + dependencyTypes: ["local", "require"], dynamic: false, followable: true, exoticallyRequired: false, @@ -118,7 +118,7 @@ describe("[I] extract/getDependencies - CommonJS - with bangs", () => { { resolved: "test/extract/__mocks__/cjs-multi-bangs/dependency.js", coreModule: false, - dependencyTypes: ["local"], + dependencyTypes: ["local", "require"], dynamic: false, followable: true, exoticallyRequired: false, diff --git a/test/extract/get-dependencies.odds-and-ends.spec.mjs b/test/extract/get-dependencies.odds-and-ends.spec.mjs index 33445c698..6dd9e5857 100644 --- a/test/extract/get-dependencies.odds-and-ends.spec.mjs +++ b/test/extract/get-dependencies.odds-and-ends.spec.mjs @@ -125,7 +125,7 @@ describe("[I] extract/getDependencies - include", () => { { coreModule: false, couldNotResolve: false, - dependencyTypes: ["local"], + dependencyTypes: ["local", "require"], dynamic: false, followable: true, exoticallyRequired: false, @@ -155,7 +155,7 @@ describe("[I] extract/getDependencies - include", () => { { coreModule: false, couldNotResolve: false, - dependencyTypes: ["local"], + dependencyTypes: ["local", "require"], dynamic: false, followable: true, exoticallyRequired: false, @@ -167,7 +167,7 @@ describe("[I] extract/getDependencies - include", () => { { coreModule: false, couldNotResolve: false, - dependencyTypes: ["local"], + dependencyTypes: ["local", "require"], dynamic: false, followable: true, exoticallyRequired: false, @@ -197,7 +197,7 @@ describe("[I] extract/getDependencies - include", () => { { coreModule: false, couldNotResolve: false, - dependencyTypes: ["local"], + dependencyTypes: ["local", "exotic-require"], dynamic: false, followable: true, exoticallyRequired: true, @@ -250,7 +250,7 @@ describe("[I] extract/getDependencies - include", () => { { coreModule: false, couldNotResolve: false, - dependencyTypes: ["local"], + dependencyTypes: ["local", "import"], dynamic: false, followable: true, exoticallyRequired: false, @@ -264,7 +264,7 @@ describe("[I] extract/getDependencies - include", () => { { coreModule: false, couldNotResolve: false, - dependencyTypes: ["local"], + dependencyTypes: ["local", "import"], dynamic: false, followable: true, exoticallyRequired: false, diff --git a/test/main/__fixtures__/cruise-reporterless/amd.json b/test/main/__fixtures__/cruise-reporterless/amd.json index b5bb2f7fe..6f8026a64 100644 --- a/test/main/__fixtures__/cruise-reporterless/amd.json +++ b/test/main/__fixtures__/cruise-reporterless/amd.json @@ -42,7 +42,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/amd/sub/local-module-in-drag.js", "moduleSystem": "amd", "coreModule": false, - "dependencyTypes": ["undetermined"], + "dependencyTypes": ["undetermined", "amd-define"], "dynamic": false, "circular": false, "followable": true, diff --git a/test/main/__fixtures__/cruise-reporterless/bundled-dependencies.json b/test/main/__fixtures__/cruise-reporterless/bundled-dependencies.json index 93325651b..6e7dfdd2d 100644 --- a/test/main/__fixtures__/cruise-reporterless/bundled-dependencies.json +++ b/test/main/__fixtures__/cruise-reporterless/bundled-dependencies.json @@ -20,7 +20,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["npm"], + "dependencyTypes": ["npm", "require"], "dynamic": false, "circular": false, "license": "MIT", @@ -35,7 +35,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["npm", "npm-bundled"], + "dependencyTypes": ["npm", "npm-bundled", "require"], "dynamic": false, "circular": false, "license": "MIT", diff --git a/test/main/__fixtures__/cruise-reporterless/coffee.json b/test/main/__fixtures__/cruise-reporterless/coffee.json index 1cb2b4647..793b7fda7 100644 --- a/test/main/__fixtures__/cruise-reporterless/coffee.json +++ b/test/main/__fixtures__/cruise-reporterless/coffee.json @@ -12,7 +12,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/coffee/javascriptThing.js", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "circular": false, "followable": true, @@ -26,7 +26,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/coffee/sub/index.coffee", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "circular": false, "followable": true, @@ -41,7 +41,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/coffee/sub/kaching.litcoffee", "coreModule": false, "matchesDoNotFollow": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "circular": false, "followable": true, @@ -54,7 +54,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/coffee/sub/willBeReExported.coffee.md", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "export"], "dynamic": false, "circular": false, "followable": true, @@ -68,7 +68,7 @@ { "resolved": "path", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "circular": false, "followable": false, @@ -89,7 +89,7 @@ "matchesDoNotFollow": false, "coreModule": true, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "orphan": false, "dependencies": [], "dependents": [ @@ -113,7 +113,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/coffee/sub/willBeReExported.coffee.md", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "circular": false, "followable": true, diff --git a/test/main/__fixtures__/cruise-reporterless/commonjs.json b/test/main/__fixtures__/cruise-reporterless/commonjs.json index 6680a4314..697bde7b3 100644 --- a/test/main/__fixtures__/cruise-reporterless/commonjs.json +++ b/test/main/__fixtures__/cruise-reporterless/commonjs.json @@ -29,7 +29,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/shared.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -43,7 +43,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/somedata.json", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": false, @@ -57,7 +57,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/two_only_one.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -71,7 +71,7 @@ "resolved": "http", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -90,7 +90,7 @@ "matchesDoNotFollow": false, "couldNotResolve": false, "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "orphan": false, "dependencies": [], "dependents": [ @@ -104,7 +104,7 @@ "matchesDoNotFollow": false, "couldNotResolve": false, "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "orphan": false, "dependencies": [], "dependents": [ @@ -121,7 +121,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -142,7 +142,7 @@ "matchesDoNotFollow": false, "couldNotResolve": false, "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "orphan": false, "dependencies": [], "dependents": [ @@ -161,7 +161,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/sub/dir.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -185,7 +185,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/sub/depindir.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -199,7 +199,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -223,7 +223,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -258,7 +258,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/one_only_one.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -272,7 +272,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/one_only_two.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -286,7 +286,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/shared.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -300,7 +300,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/sub/dir.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -314,7 +314,7 @@ "resolved": "fs", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -333,7 +333,7 @@ "matchesDoNotFollow": false, "couldNotResolve": false, "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "orphan": false, "dependencies": [], "dependents": [ @@ -350,7 +350,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -371,7 +371,7 @@ "matchesDoNotFollow": false, "couldNotResolve": false, "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "orphan": false, "dependencies": [], "dependents": [ @@ -392,7 +392,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -416,7 +416,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -440,7 +440,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/sub/depindir.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -454,7 +454,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -478,7 +478,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -513,7 +513,7 @@ "resolved": "shared.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -527,7 +527,7 @@ "resolved": "somedata.json", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": false, @@ -541,7 +541,7 @@ "resolved": "two_only_one.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -555,7 +555,7 @@ "resolved": "http", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -574,7 +574,7 @@ "matchesDoNotFollow": false, "couldNotResolve": false, "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "orphan": false, "dependencies": [], "dependents": ["root_two.js"], @@ -586,7 +586,7 @@ "matchesDoNotFollow": false, "couldNotResolve": false, "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "orphan": false, "dependencies": [], "dependents": ["root_two.js"], @@ -601,7 +601,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -620,7 +620,7 @@ "matchesDoNotFollow": false, "couldNotResolve": false, "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "orphan": false, "dependencies": [], "dependents": ["shared.js", "sub/dir.js", "sub/depindir.js"], @@ -635,7 +635,7 @@ "resolved": "sub/dir.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -657,7 +657,7 @@ "resolved": "sub/depindir.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "followable": true, @@ -671,7 +671,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -693,7 +693,7 @@ "resolved": "path", "moduleSystem": "cjs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "circular": false, "followable": false, @@ -736,7 +736,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/pointed-to-by-circular.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -750,7 +750,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/ralucric.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -793,7 +793,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/circular.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -835,7 +835,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/circle-one.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -857,7 +857,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/circle-two.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -888,7 +888,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/circle-three.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -917,7 +917,7 @@ "resolved": "test/main/__mocks__/cruise-reporterless/commonjs/circle-one.js", "moduleSystem": "cjs", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "followable": true, "exoticallyRequired": false, diff --git a/test/main/__fixtures__/cruise-reporterless/deprecated-node-module.json b/test/main/__fixtures__/cruise-reporterless/deprecated-node-module.json index bac22940f..9bee41836 100644 --- a/test/main/__fixtures__/cruise-reporterless/deprecated-node-module.json +++ b/test/main/__fixtures__/cruise-reporterless/deprecated-node-module.json @@ -17,7 +17,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["npm-no-pkg", "deprecated"], + "dependencyTypes": ["npm-no-pkg", "deprecated", "require"], "dynamic": false, "circular": false, "module": "deprecated-at-the-start-for-test-purposes", @@ -40,7 +40,7 @@ "exoticallyRequired": false, "matchesDoNotFollow": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "dynamic": false, "circular": false, "module": "./package.json", @@ -59,7 +59,7 @@ "matchesDoNotFollow": false, "coreModule": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "orphan": false, "dependencies": [], "dependents": [ diff --git a/test/main/__fixtures__/cruise-reporterless/folder.json b/test/main/__fixtures__/cruise-reporterless/folder.json index b5d3c9206..277c35c93 100644 --- a/test/main/__fixtures__/cruise-reporterless/folder.json +++ b/test/main/__fixtures__/cruise-reporterless/folder.json @@ -31,7 +31,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "matchesDoNotFollow": false, "circular": false, "instability": 0.875, @@ -55,7 +55,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "matchesDoNotFollow": false, "circular": false, "instability": 0, diff --git a/test/main/__fixtures__/cruise-reporterless/metrics.json b/test/main/__fixtures__/cruise-reporterless/metrics.json index 575ed01f3..019cd1d01 100644 --- a/test/main/__fixtures__/cruise-reporterless/metrics.json +++ b/test/main/__fixtures__/cruise-reporterless/metrics.json @@ -21,7 +21,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "instability": 0.5, @@ -36,7 +36,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "instability": 0.6666666666666666, @@ -51,7 +51,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "instability": 0, @@ -104,7 +104,7 @@ "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "matchesDoNotFollow": false, "circular": false, "instability": 0, @@ -124,7 +124,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dependencies": [], "dependents": [ "test/main/__mocks__/cruise-reporterless/metrics/format-output/index.js" @@ -144,7 +144,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "instability": 0, @@ -159,7 +159,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "instability": 0, diff --git a/test/main/__fixtures__/cruise-reporterless/typescript.json b/test/main/__fixtures__/cruise-reporterless/typescript.json index 7e36d0bac..33e27179c 100644 --- a/test/main/__fixtures__/cruise-reporterless/typescript.json +++ b/test/main/__fixtures__/cruise-reporterless/typescript.json @@ -15,7 +15,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/typescript/javascriptThing.js", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -29,7 +29,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/typescript/sub/index.ts", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -43,7 +43,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/typescript/sub/kaching.ts", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -57,7 +57,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/typescript/sub/willBeReExported.ts", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "export"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -71,7 +71,7 @@ { "resolved": "fs", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "dynamic": false, "followable": false, "exoticallyRequired": false, @@ -85,7 +85,7 @@ { "resolved": "path", "coreModule": true, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dynamic": false, "followable": false, "exoticallyRequired": false, @@ -106,7 +106,7 @@ "matchesDoNotFollow": false, "coreModule": true, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "require"], "orphan": false, "dependencies": [], "dependents": [ @@ -120,7 +120,7 @@ "matchesDoNotFollow": false, "coreModule": true, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "orphan": false, "dependencies": [], "dependents": [ @@ -144,7 +144,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/typescript/sub/willBeReExported.ts", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -198,7 +198,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/typescript-circular-with-types/B.ts", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -226,7 +226,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/typescript-circular-with-types/A.ts", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, @@ -268,7 +268,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "circular": false, "module": "./b", @@ -282,7 +282,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "circular": false, "module": "./c", @@ -304,7 +304,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "circular": false, "module": "./c", @@ -344,7 +344,7 @@ { "resolved": "test/main/__mocks__/cruise-reporterless/typescript-circular-with-types/B.ts", "coreModule": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "followable": true, "exoticallyRequired": false, diff --git a/test/main/__fixtures__/cruise-reporterless/vue.json b/test/main/__fixtures__/cruise-reporterless/vue.json index 0f0a5cf5e..c4a37883a 100644 --- a/test/main/__fixtures__/cruise-reporterless/vue.json +++ b/test/main/__fixtures__/cruise-reporterless/vue.json @@ -15,7 +15,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "circular": false, "module": "./App.vue", @@ -63,7 +63,7 @@ "followable": true, "exoticallyRequired": false, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "dynamic": false, "circular": false, "module": "./components/HelloWorld.vue", diff --git a/test/main/__fixtures__/jsx-as-object.json b/test/main/__fixtures__/jsx-as-object.json index 119e4bf0d..5de6ac0e9 100644 --- a/test/main/__fixtures__/jsx-as-object.json +++ b/test/main/__fixtures__/jsx-as-object.json @@ -12,7 +12,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/main/__fixtures__/jsx.json b/test/main/__fixtures__/jsx.json index 20434438d..28854d887 100644 --- a/test/main/__fixtures__/jsx.json +++ b/test/main/__fixtures__/jsx.json @@ -12,7 +12,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/main/__fixtures__/ts-no-precomp-cjs.json b/test/main/__fixtures__/ts-no-precomp-cjs.json index a9e8da975..f18e5155a 100644 --- a/test/main/__fixtures__/ts-no-precomp-cjs.json +++ b/test/main/__fixtures__/ts-no-precomp-cjs.json @@ -37,7 +37,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -51,7 +51,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/main/__fixtures__/ts-no-precomp-es.json b/test/main/__fixtures__/ts-no-precomp-es.json index 6f5458293..37eab7421 100644 --- a/test/main/__fixtures__/ts-no-precomp-es.json +++ b/test/main/__fixtures__/ts-no-precomp-es.json @@ -37,7 +37,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -51,7 +51,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/main/__fixtures__/ts-precomp-cjs.json b/test/main/__fixtures__/ts-precomp-cjs.json index 1968ddd25..7137c5621 100644 --- a/test/main/__fixtures__/ts-precomp-cjs.json +++ b/test/main/__fixtures__/ts-precomp-cjs.json @@ -39,7 +39,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -53,7 +53,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -67,7 +67,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/main/__fixtures__/ts-precomp-es.json b/test/main/__fixtures__/ts-precomp-es.json index 427fc604f..ee50ee4c6 100644 --- a/test/main/__fixtures__/ts-precomp-es.json +++ b/test/main/__fixtures__/ts-precomp-es.json @@ -39,7 +39,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -53,7 +53,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -67,7 +67,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/main/__fixtures__/ts.json b/test/main/__fixtures__/ts.json index f2c283856..a8ac4bf1b 100644 --- a/test/main/__fixtures__/ts.json +++ b/test/main/__fixtures__/ts.json @@ -12,7 +12,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -26,7 +26,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -40,7 +40,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -54,7 +54,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "export"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -68,7 +68,7 @@ "coreModule": true, "followable": false, "couldNotResolve": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true @@ -84,7 +84,7 @@ "coreModule": true, "couldNotResolve": false, "matchesDoNotFollow": false, - "dependencyTypes": ["core"], + "dependencyTypes": ["core", "import"], "dependencies": [], "dependents": ["test/main/__mocks__/ts/index.ts"], "orphan": false, @@ -109,7 +109,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/main/__fixtures__/tsx.json b/test/main/__fixtures__/tsx.json index 353ef0e44..7dcf27572 100644 --- a/test/main/__fixtures__/tsx.json +++ b/test/main/__fixtures__/tsx.json @@ -12,7 +12,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/test/main/__mocks__/collapse-after-cruise/expected-result.json b/test/main/__mocks__/collapse-after-cruise/expected-result.json index ac89f2bb0..fe04e905f 100644 --- a/test/main/__mocks__/collapse-after-cruise/expected-result.json +++ b/test/main/__mocks__/collapse-after-cruise/expected-result.json @@ -17,7 +17,7 @@ { "dependencies": [ { - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "rules": [], "valid": true, "module": "./input", @@ -32,7 +32,7 @@ "circular": false }, { - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "rules": [], "valid": true, "module": "./output", @@ -47,7 +47,7 @@ "circular": false }, { - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "rules": [], "valid": true, "module": "./post-processing", @@ -62,7 +62,7 @@ "circular": false }, { - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "rules": [], "valid": true, "module": "./pre-processing", @@ -102,7 +102,7 @@ { "dependencies": [ { - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "require"], "rules": [], "valid": true, "module": "../utl/do-interesting-things", diff --git a/test/main/__mocks__/dynamic-imports/es/output.json b/test/main/__mocks__/dynamic-imports/es/output.json index 90c5e9909..aefa498b7 100644 --- a/test/main/__mocks__/dynamic-imports/es/output.json +++ b/test/main/__mocks__/dynamic-imports/es/output.json @@ -12,7 +12,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": true, "cycle": [ @@ -40,7 +40,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": true, "cycle": [ @@ -68,7 +68,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "dynamic-import"], "matchesDoNotFollow": false, "circular": true, "cycle": [ diff --git a/test/main/__mocks__/dynamic-imports/typescript/output-pre-compilation-deps.json b/test/main/__mocks__/dynamic-imports/typescript/output-pre-compilation-deps.json index b1fdbba52..d9b55a1f6 100644 --- a/test/main/__mocks__/dynamic-imports/typescript/output-pre-compilation-deps.json +++ b/test/main/__mocks__/dynamic-imports/typescript/output-pre-compilation-deps.json @@ -12,7 +12,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": true, "cycle": [ @@ -40,7 +40,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": true, "cycle": [ @@ -68,7 +68,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "dynamic-import"], "matchesDoNotFollow": false, "circular": true, "cycle": [ diff --git a/test/main/__mocks__/dynamic-imports/typescript/output.json b/test/main/__mocks__/dynamic-imports/typescript/output.json index 281931b0e..c6e8f75e1 100644 --- a/test/main/__mocks__/dynamic-imports/typescript/output.json +++ b/test/main/__mocks__/dynamic-imports/typescript/output.json @@ -12,7 +12,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": true, "cycle": [ @@ -40,7 +40,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "import"], "matchesDoNotFollow": false, "circular": true, "cycle": [ @@ -68,7 +68,7 @@ "coreModule": false, "followable": true, "couldNotResolve": false, - "dependencyTypes": ["local"], + "dependencyTypes": ["local", "dynamic-import"], "matchesDoNotFollow": false, "circular": true, "cycle": [ diff --git a/test/main/__mocks__/type-only-imports/output-with-rules.json b/test/main/__mocks__/type-only-imports/output-with-rules.json index b880b0885..1bfd82d66 100644 --- a/test/main/__mocks__/type-only-imports/output-with-rules.json +++ b/test/main/__mocks__/type-only-imports/output-with-rules.json @@ -8,7 +8,7 @@ "module": "./types", "moduleSystem": "es6", "exoticallyRequired": false, - "dependencyTypes": ["local", "type-only"], + "dependencyTypes": ["local", "type-only", "import"], "resolved": "src/types.ts", "coreModule": false, "followable": true, diff --git a/test/main/__mocks__/type-only-imports/output.json b/test/main/__mocks__/type-only-imports/output.json index 93a833e1b..b5c95f748 100644 --- a/test/main/__mocks__/type-only-imports/output.json +++ b/test/main/__mocks__/type-only-imports/output.json @@ -8,7 +8,7 @@ "module": "./types", "moduleSystem": "es6", "exoticallyRequired": false, - "dependencyTypes": ["local", "type-only"], + "dependencyTypes": ["local", "type-only", "import"], "resolved": "src/types.ts", "coreModule": false, "followable": true, diff --git a/test/main/__mocks__/type-only-module-references/output.json b/test/main/__mocks__/type-only-module-references/output.json index 1c35be9cc..ef5804691 100644 --- a/test/main/__mocks__/type-only-module-references/output.json +++ b/test/main/__mocks__/type-only-module-references/output.json @@ -13,7 +13,7 @@ "followable": true, "couldNotResolve": false, "license": "MIT", - "dependencyTypes": ["npm-no-pkg"], + "dependencyTypes": ["npm-no-pkg", "import"], "matchesDoNotFollow": false, "circular": false, "valid": true diff --git a/tools/schema/dependency-type.mjs b/tools/schema/dependency-type.mjs index 9cff31da9..ae59748b6 100644 --- a/tools/schema/dependency-type.mjs +++ b/tools/schema/dependency-type.mjs @@ -3,27 +3,41 @@ export default { DependencyTypeType: { type: "string", enum: [ - "aliased", "aliased-subpath-import", - "aliased-tsconfig", "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", "local", "localmodule", - "npm", "npm-bundled", "npm-dev", "npm-no-pkg", "npm-optional", "npm-peer", "npm-unknown", + "npm", + "require", + "triple-slash-amd-dependency", + "triple-slash-directive", + "triple-slash-file-reference", + "triple-slash-type-reference", + "type-import", + "type-only", "undetermined", "unknown", - "type-only", ], }, }, diff --git a/types/shared-types.d.mts b/types/shared-types.d.mts index 1de1e29a4..d10ed8121 100644 --- a/types/shared-types.d.mts +++ b/types/shared-types.d.mts @@ -35,27 +35,41 @@ export type SeverityType = "error" | "warn" | "info" | "ignore"; // cruise options, cruise result, rule set export type DependencyType = - | "aliased" | "aliased-subpath-import" - | "aliased-tsconfig" | "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" | "local" | "localmodule" - | "npm" | "npm-bundled" | "npm-dev" | "npm-no-pkg" | "npm-optional" | "npm-peer" | "npm-unknown" + | "npm" + | "require" + | "triple-slash-amd-dependency" + | "triple-slash-directive" + | "triple-slash-file-reference" + | "triple-slash-type-reference" + | "type-import" + | "type-only" | "undetermined" - | "unknown" - | "type-only"; + | "unknown"; export type ProtocolType = "data:" | "file:" | "node:";