Class: LicenseFinder::NPM

Inherits:
PackageManager show all
Defined in:
lib/license_finder/package_managers/npm.rb

Constant Summary collapse

DEPENDENCY_GROUPS =
["dependencies", "devDependencies"]

Instance Method Summary collapse

Methods inherited from PackageManager

#active?, current_packages, #current_packages_with_relations, #initialize, package_managers

Constructor Details

This class inherits a constructor from LicenseFinder::PackageManager

Instance Method Details

#current_packagesObject



7
8
9
10
11
12
13
14
15
16
17
# File 'lib/license_finder/package_managers/npm.rb', line 7

def current_packages
  json = npm_json
  dependencies = DEPENDENCY_GROUPS
    .map { |g| (json[g] || {}).values }
    .flatten(1)
    .reject{ |d| d.is_a?(String) }

  pkgs = {} # name => spec
  dependencies.each { |d| recursive_dependencies(d, pkgs) }
  pkgs.values.map { |d| NpmPackage.new(d, logger: logger) }
end