Sha256: da9926c6c364ec104f8d1e937135bc0b0a75ffa256e981d06e40c8d03b7c304e

Contents?: true

Size: 1.42 KB

Versions: 1

Compression:

Stored size: 1.42 KB

Contents

require 'rack'
require 'yaml'

# Asset packer, middleware and helpers
# @homepage: https://github.com/fugroup/asset
# @author:   Vidar <vidar@fugroup.net>, Fugroup Ltd.
# @license:  MIT, contributions are welcome.
module Asset

  autoload :Uglifier, 'uglifier'
  autoload :Sass, 'sass'

  class << self; attr_accessor :mode, :path, :cache, :favicon, :robots, :manifest, :bundle, :images, :listener, :debug; end

  # Default is development
  @mode = ENV['RACK_ENV'] || 'development'

  # Where your assets live
  @path = File.join(Dir.pwd, 'app', 'assets')

  # Where to write the cache, default to APP_ROOT/tmp
  @cache = File.join(Dir.pwd, 'tmp')

  # Automatically bounce (404) for browser /favicon.ico requests
  @favicon = true

  # Send /robots.txt to a standard robots txt with reference to /sitemap.xml
  @robots = true

  # Reset the assets on change in development mode
  @listener = true

  # Debug option
  @debug = false
end

require_relative 'assets/util'
require_relative 'assets/item'

::Asset::Util.setup!

require_relative 'assets/helpers'
require_relative 'assets/filters'
require_relative 'assets/router'

# Run a listener to automatically reload the assets on change
if ::Asset.listener and ::Asset.mode == 'development'
  autoload :Listen, 'listen'

  if defined?(Listen)
    # Reload assets on change
    listener = Listen.to(::Asset.path) do |modified, added, removed|
      ::Asset::Util.setup!
    end
    listener.start
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
asset-0.1.9 lib/asset.rb