module Rake::Sprockets

Constants

VERSION

Attributes

asset_paths[RW]
css_compressor[RW]
js_compressor[RW]
logger[RW]
precompile[RW]
root[RW]

Public Class Methods

assets() click to toggle source
# File lib/rake/sprockets.rb, line 38
def assets
  root.join "assets"
end
clean() click to toggle source
# File lib/rake/sprockets.rb, line 87
def clean
  public_assets.rmtree if public_assets.exist?
end
compile() click to toggle source
# File lib/rake/sprockets.rb, line 79
def compile
  public_assets.mkpath
  precompile.each do |file|
    public_filename = public_assets.join filename(file)
    sprockets[file].write_to public_filename
  end
end
create_sprockets_env() click to toggle source
# File lib/rake/sprockets.rb, line 64
def create_sprockets_env
  ::Sprockets::Environment.new(root) do |s_env|
    s_env.logger = logger

    if env.production?
      s_env.js_compressor = js_compressor if js_compressor
      s_env.css_compressor = css_compressor if css_compressor
    end
  end.tap do |s|
    asset_paths.each do |path|
      s.append_path assets.join(path)
    end
  end
end
env() click to toggle source
# File lib/rake/sprockets.rb, line 18
def env
  @env ||= ENV.fetch("RAKE_ENV", "development").ey?
end
filename(file) click to toggle source
# File lib/rake/sprockets.rb, line 50
def filename(file)
  asset = sprockets[file]

  if env.production?
    asset.digest_path
  else
    asset.logical_path
  end
end
public() click to toggle source
# File lib/rake/sprockets.rb, line 34
def public
  root.join "public"
end
public_assets() click to toggle source
# File lib/rake/sprockets.rb, line 42
def public_assets
  public.join("assets")
end
sprockets() click to toggle source
# File lib/rake/sprockets.rb, line 46
def sprockets
  @sprockets ||= create_sprockets_env
end
url(file) click to toggle source
# File lib/rake/sprockets.rb, line 60
def url(file)
  "/assets/#{filename(file)}"
end