class LicenseFinder::Bower

def bower_output

def bower_output
  command = "#{package_management_command} list --json -l action --allow-root"
  stdout, stderr, status = Dir.chdir(project_path) { Cmd.run(command) }
  raise "Command '#{command}' failed to execute: #{stderr}" unless status.success?
  JSON(stdout)
    .fetch('dependencies', {})
    .values
end

def current_packages

def current_packages
  bower_output.map do |package|
    BowerPackage.new(package, logger: logger)
  end
end

def package_management_command

def package_management_command
  'bower'
end

def possible_package_paths

def possible_package_paths
  [project_path.join('bower.json')]
end

def prepare_command

def prepare_command
  'bower install'
end