class Assette::Config

Constants

BLOCKS
DEFAULTS
MULTIPLES
OPTIONS
SINGLES

Attributes

compiling[RW]
env[W]
minifying[RW]
sha[RW]

Public Class Methods

load(p) click to toggle source
# File lib/assette/config.rb, line 211
def load p
  b = Builder.new(p)
  b.__run__
  
  new b.to_hash
end
new(args = {}) click to toggle source
# File lib/assette/config.rb, line 50
def initialize args = {}
  args = DEFAULTS.merge(args||{})
  
  args.each do |k,v|
    begin
      var = v.dup.freeze
    rescue TypeError
      var = v
    end
    instance_variable_set "@#{k}", var
  end
end

Public Instance Methods

asset_host(i) click to toggle source
# File lib/assette/config.rb, line 133
def asset_host i
  return '' unless asset_hosts?
  @asset_hosts[i % @asset_hosts.size]
end
asset_hosts?() click to toggle source
# File lib/assette/config.rb, line 109
def asset_hosts?
  !@asset_hosts.empty?
end
build_target() click to toggle source
# File lib/assette/config.rb, line 105
def build_target
  @asset_dir
end
compiled_path(str) click to toggle source
# File lib/assette/config.rb, line 138
def compiled_path str
  str = str.dup
  if sha
    case cache_method.to_s
    when 'path'
      str = File.join(sha,str)
    when 'param'
      str << (str.include?('?') ? '&' : '?')
      
      str << 'v=' << sha
    else
      warn('No cache compile method set (param or path)')
    end
  end
  
  str
end
compiling?() click to toggle source
# File lib/assette/config.rb, line 113
def compiling?
  !!compiling
end
dev?() click to toggle source
# File lib/assette/config.rb, line 86
def dev?
  !prod?
end
env() click to toggle source
# File lib/assette/config.rb, line 63
def env
  return @env if @env
  
  case
  when defined?(ENVIRONMENT)
    ENVIRONMENT
  when defined?(Merb)
    Merb.env
  when defined?(Rails)
    Rails.env
  else
    ENV['RACK_ENV'] || ENV['RAILS_ENV']
  end
end
env?(e) click to toggle source
# File lib/assette/config.rb, line 78
def env? e
  env == e
end
find_file_from_relative_path(path) click to toggle source
# File lib/assette/config.rb, line 90
def find_file_from_relative_path path
  a = Assette.config.file_paths.find do |pp|
    File.exist?(File.join(pp,path))
  end
  File.join(a,path)
end
find_target_from_relative_path(path) click to toggle source
# File lib/assette/config.rb, line 97
def find_target_from_relative_path path
  Assette.config.file_paths.find do |p|
    Assette::Reader.possible_targets(File.join(p,path)).find do |pp|
      File.exist?(pp)
    end
  end
end
minify?() click to toggle source
# File lib/assette/config.rb, line 117
def minify?
  !!minify
end
minifying?() click to toggle source
# File lib/assette/config.rb, line 121
def minifying?
  !!(@minifying && minify?)
end
prod?() click to toggle source
# File lib/assette/config.rb, line 82
def prod?
  env == 'production'
end