Module: Appetizer::UI::Assets
- Defined in:
- lib/appetizer/ui/assets.rb,
lib/appetizer/ui/assets/delivery.rb
Defined Under Namespace
Classes: Delivery
Class Method Summary collapse
Class Method Details
.compiled? ⇒ Boolean
47 48 49 |
# File 'lib/appetizer/ui/assets.rb', line 47 def self.compiled? App.production? or ENV["APPETIZER_USE_COMPILED_ASSETS"] end |
.manifest ⇒ Object
51 52 53 54 55 56 57 58 59 60 61 62 |
# File 'lib/appetizer/ui/assets.rb', line 51 def self.manifest return @manifest if defined? @manifest @manifest = Hash.new { |h, k| k } if File.file? file = "public/assets/manifest.yml" require "yaml" @manifest.merge! YAML.load File.read file end @manifest end |
.registered(app) ⇒ Object
64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 |
# File 'lib/appetizer/ui/assets.rb', line 64 def self.registered app app.helpers do def asset name if Appetizer::UI::Assets.compiled? return cdnify "/assets/#{Appetizer::UI::Assets.manifest[name]}" end cdnify "/assets/#{App.assets[name].logical_path}" end def assets *names names.flat_map do |name| next unless asset = App.assets[name] next asset name if Appetizer::UI::Assets.compiled? [asset.dependencies, asset].flatten.map do |dep| "/assets/#{dep.logical_path}?body=true" end end.compact end def cdnify path File.join [ENV["APPETIZER_CDN_URL"], path].compact end end end |