boll
Get started
Documentation
GitHub
Get started
Documentation
GitHub
  • Class: Cli
  • Class: ConfigGenerator
  • Class: DefaultFormatter
  • Class: VsoFormatter
  • Enumeration: Status
  • @boll/cli
  • Interface: Formatter
  • Class: BasePackageRule ‹T›
  • Class: Config
  • Class: ConfigRegistry
  • Class: Failure
  • Class: FakeFile
  • Class: FakeGlob
  • Class: FakeRule
  • Class: FakeRule2
  • Class: FileContext
  • Class: GlobsForIgnorePattern
  • Class: IgnoredFiles
  • Class: IgnorePattern
  • Class: InstantiatedPackageMetaRule
  • Class: InstantiatedPackageRule
  • Class: Logger
  • Class: PackageJsonGlob
  • Class: ResultSet
  • Class: RuleRegistry
  • Class: RuleSet
  • Class: Success
  • Class: Suite
  • Class: TypescriptSourceGlob
  • Class: WorkspacesGlob
  • Enumeration: ResultStatus
  • @boll/core
  • Interface: CheckConfiguration
  • Interface: CheckFunctionOptions
  • Interface: Checks
  • Interface: ConfigDefinition
  • Interface: FileGlob
  • Interface: FileGlobOptions
  • Interface: GroupedResult
  • Interface: IgnoredFilesOptions
  • Interface: IgnoreFileToGlobs
  • Interface: IgnoreFileToIgnorePatterns
  • Interface: ImportPathAndLineNumber
  • Interface: InstantiatedRule
  • Interface: LoadedConfigDefinition
  • Interface: PackageMetaRule
  • Interface: PackageRule
  • Interface: Result
  • Interface: Rule
  • Interface: RuleOptions
  • Interface: RuleResult
  • Interface: RuleSetConfiguration
  • Class: EnforceRationale
  • Class: NoRedundantDepsRule
  • Class: PackageConsistency
  • @boll/rules-core
  • Interface: EnforceRationaleOptions
  • Interface: PackageConsistencyOptions
  • Class: ESLintPreferConstRule
  • Class: ESLintRules
  • @boll/rules-external-tools
  • Interface: ESLintRulesOptions
  • Class: CrossPackageDependencyDetector
  • Class: NodeModulesReferenceDetector
  • Class: RedundantImportsDetector
  • Class: SrcDetector
  • Class: TransitiveDependencyDetector
  • Class: UnusedDependencyDetector
  • @boll/rules-typescript
  • Interface: DependencyCount
  • Interface: Options
  • Interface: SourceLineAndLineNumber
  • Interface: UnusedDependencyDetectorOptions

Class: TransitiveDependencyDetector

@boll/rules-typescript › Globals › TransitiveDependencyDetector

Class: TransitiveDependencyDetector

TransitiveDependencyDetector will detect usages of non direct dependencies in import statements of typescript source files.

If package A depends on B, A is free to import things at will from package B. However, if B depends on C, A may be able to access C in some environments even without specifying a dependency in package.json.

This rule catches instances of this chain in typescript source files.

Hierarchy

  • TransitiveDependencyDetector

Implements

  • PackageRule

Index

Constructors

  • constructor

Accessors

  • name

Methods

  • check
  • getModuleImports
  • getPathFromNode
  • isValidImport

Object literals

  • options

Constructors

constructor

+ new TransitiveDependencyDetector(...options: Partial‹Options›[]): TransitiveDependencyDetector

Defined in transitive-dependency-detector.ts:37

Parameters:

NameType
...optionsPartial‹Options›[]

Returns: TransitiveDependencyDetector

Accessors

name

• get name(): string

Defined in transitive-dependency-detector.ts:48

Returns: string

Methods

check

▸ check(file: FileContext): Promise‹Result[]›

Defined in transitive-dependency-detector.ts:52

Parameters:

NameType
fileFileContext

Returns: Promise‹Result[]›


getModuleImports

▸ getModuleImports(sourceFile: SourceFile): ImportPathAndLineNumber[]

Defined in transitive-dependency-detector.ts:83

Parameters:

NameType
sourceFileSourceFile

Returns: ImportPathAndLineNumber[]


Private getPathFromNode

▸ getPathFromNode(n: ImportDeclaration): string

Defined in transitive-dependency-detector.ts:99

Parameters:

NameType
nImportDeclaration

Returns: string


isValidImport

▸ isValidImport(packageDependencies: Package["dependencies"], packageDevDependencies: Package["devDependencies"], importPath: string): any

Defined in transitive-dependency-detector.ts:70

Parameters:

NameType
packageDependenciesPackage["dependencies"]
packageDevDependenciesPackage["devDependencies"]
importPathstring

Returns: any

Object literals

Private options

▪ options: object

Defined in transitive-dependency-detector.ts:37

Prev
Class: SrcDetector
Next
Class: UnusedDependencyDetector