Sha256: 54ce489a45f686e75df509b126bd6daa2dc60b4552c48b19629f3ed8a12d4e2c

Contents?: true

Size: 583 Bytes

Versions: 6

Compression:

Stored size: 583 Bytes

Contents

require 'json'

module LicenseFinder
  class Bower < PackageManager
    def current_packages
      bower_output.map do |package|
        BowerPackage.new(package, logger: logger)
      end
    end

    private

    def bower_output
      command = 'bower list --json -l action'
      output, success = Dir.chdir(project_path) { capture(command) }
      raise "Command '#{command}' failed to execute: #{output}" unless success

      JSON(output)
        .fetch("dependencies", {})
        .values
    end

    def package_path
      project_path.join('bower.json')
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
license_finder-2.1.0.rc6 lib/license_finder/package_managers/bower.rb
license_finder-2.1.0.rc5 lib/license_finder/package_managers/bower.rb
license_finder-2.1.0.rc4 lib/license_finder/package_managers/bower.rb
license_finder-2.1.0.rc3 lib/license_finder/package_managers/bower.rb
license_finder-2.1.0.rc2 lib/license_finder/package_managers/bower.rb
license_finder-2.1.0.rc1 lib/license_finder/package_managers/bower.rb