class BowerVendor::Base

Public Class Methods

new() click to toggle source
# File lib/bower_vendor/base.rb, line 2
def initialize
end

Public Instance Methods

accept_vendor?(vendor, vendor_data) click to toggle source
# File lib/bower_vendor/base.rb, line 11
def accept_vendor?(vendor, vendor_data)
  !vendor_data['yarn']
end
config() click to toggle source
# File lib/bower_vendor/base.rb, line 23
def config
  @config ||= load_config('config/bower_vendor.yml')
  @config ||= load_config(File.join(BowerVendor.root_dir, 'config/bower_vendor.yml'))
end
full_vendor_src_dir(vendor) click to toggle source
# File lib/bower_vendor/base.rb, line 36
def full_vendor_src_dir(vendor)
  "#{self.work_dir}/bower_components/#{vendor}"
end
load_config(file) click to toggle source
# File lib/bower_vendor/base.rb, line 28
def load_config(file)
  if File.exist?(file)
    YAML.load_file(file)
  else
    nil
  end
end
load_vendors() click to toggle source
# File lib/bower_vendor/base.rb, line 56
def load_vendors
  vendors = YAML.load_file('vendor.yml')
  vendors.sort do |a, b|
    a[0] <=> b[0]
  end.to_h
end
local_node_bin() click to toggle source
# File lib/bower_vendor/base.rb, line 44
def local_node_bin
  "#{self.root_dir}/node_modules/.bin"
end
root_dir() click to toggle source
# File lib/bower_vendor/base.rb, line 48
def root_dir
  @root_dir ||= if defined?(Rails)
                  Rails.root
                else
                  Dir.pwd
                end
end
validate_vendors(vendors) click to toggle source
# File lib/bower_vendor/base.rb, line 15
def validate_vendors(vendors)
  # validate resources
  vendors.each do |vendor_key, vendor|
    raise "VERSION MISSING: #{vendor_key}: #{vendor.inspect}" unless vendor['version']
    puts "WARN: ASSETS MISSING: #{vendor_key}: #{vendor.inspect}" unless vendor['assets']
  end
end
vendors() click to toggle source
# File lib/bower_vendor/base.rb, line 5
def vendors
  @vendors ||= load_vendors.delete_if { |vendor, vendor_data| !accept_vendor?(vendor, vendor_data) }
  validate_vendors(@vendors)
  @vendors
end
work_dir() click to toggle source
# File lib/bower_vendor/base.rb, line 40
def work_dir
  "#{self.root_dir}/tmp"
end