Sha256: e516cc4f92e0182710508ef3789e27bf532c09596375c2c08d8b2aed3398ae9a

Contents?: true

Size: 747 Bytes

Versions: 1

Compression:

Stored size: 747 Bytes

Contents

module Middleman::Features::AssetHost
  class << self
    def registered(app)
      app.set :asset_host, nil
      
      app.compass_config do |config|
        if self.asset_host.is_a?(Proc)
          config.asset_host(&self.asset_host)
        end
      end
      
      app.send :include, InstanceMethods
    end
    alias :included :registered
  end
  
  module InstanceMethods
    def asset_url(path, prefix="")
      original_output = super

      valid_extensions = %w(.png .gif .jpg .jpeg .js .css)

      asset_prefix = if self.asset_host.is_a?(Proc)
        self.asset_host.call(original_output)
      elsif self.asset_host.is_a?(String)
        self.asset_host
      end

      File.join(asset_prefix, original_output)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
middleman-3.0.0.alpha.2 lib/middleman/features/asset_host.rb