Class: Dependabot::NpmAndYarn::DependencyFilesFilterer

Inherits:
Object
  • Object
show all
Defined in:
lib/dependabot/npm_and_yarn/dependency_files_filterer.rb

Instance Method Summary collapse

Constructor Details

#initialize(dependency_files:, dependencies:) ⇒ DependencyFilesFilterer

Returns a new instance of DependencyFilesFilterer.



8
9
10
11
# File 'lib/dependabot/npm_and_yarn/dependency_files_filterer.rb', line 8

def initialize(dependency_files:, dependencies:)
  @dependencies = dependencies
  @dependency_files = dependency_files
end

Instance Method Details

#filtered_filesObject



13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
# File 'lib/dependabot/npm_and_yarn/dependency_files_filterer.rb', line 13

def filtered_files
  dependency_files.select do |file|
    if manifest?(file)
      package_manifests.include?(file)
    elsif lockfile?(file)
      package_manifests.any? do |package_file|
        File.dirname(package_file.name) == File.dirname(file.name)
      end
    else
      # Include all non-manifest/lockfiles
      # e.g. .npmrc, lerna.json
      true
    end
  end
end

#filtered_lockfilesObject



33
34
35
# File 'lib/dependabot/npm_and_yarn/dependency_files_filterer.rb', line 33

def filtered_lockfiles
  filtered_files.select { |f| lockfile?(f) }
end

#filtered_package_filesObject



29
30
31
# File 'lib/dependabot/npm_and_yarn/dependency_files_filterer.rb', line 29

def filtered_package_files
  filtered_files.select { |f| manifest?(f) }
end