Class: AssetsBooster::Package::Stylesheet

Inherits:
Base
  • Object
show all
Includes:
Mixin::Css
Defined in:
lib/assets_booster/package/stylesheet.rb

Instance Attribute Summary

Attributes inherited from Base

#assets, #compiler_class, #filename, #name

Instance Method Summary collapse

Methods included from Mixin::Css

#adjust_relative_urls, #hostify_urls, #unquote

Methods included from Mixin::Url

#absolute_url?, #external_url?, #path_difference

Methods inherited from Base

#compile, #compiler, #delete, #exists?, #initialize, #merge, #merger, #mtime, #sources, #view_helper_sources

Constructor Details

This class inherits a constructor from AssetsBooster::Package::Base

Instance Method Details

#asset_path(name) ⇒ Object



12
13
14
15
# File 'lib/assets_booster/package/stylesheet.rb', line 12

def asset_path(name)
  path = AssetsBooster::Packager.asset_path("stylesheets")
  path = File.join(path, name+".css") if name
end

#default_asset_hostObject



17
18
19
# File 'lib/assets_booster/package/stylesheet.rb', line 17

def default_asset_host
  Rails.configuration.action_controller.asset_host
end

#merger_classObject



7
8
9
10
# File 'lib/assets_booster/package/stylesheet.rb', line 7

def merger_class
  require "assets_booster/merger/css"
  AssetsBooster::Merger::CSS
end

#view_helper(view, options) ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/assets_booster/package/stylesheet.rb', line 21

def view_helper(view, options)
  if options[:inline]
    code = read
    inline = options[:inline]
    if inline.is_a?(Hash)
      if inline[:hostify_urls]
        base_url = (inline[:hostify_urls] == true) ? default_asset_host : inline[:hostify_urls] 
        code = hostify_urls(base_url, code)
      end
    end
    view.style_tag(code, options.except(:inline))
  else
    view.stylesheet_link_tag(view_helper_sources, options)
  end
end