module Sprockets::SassProcessor::Functions
Public: Functions injected into Sass context during Sprockets evaluation.
This module may be extended to add global functionality to all Sprockets Sass environments. Though, scoping your functions to just your environment is preferred.
module Sprockets::SassProcessor::Functions
def asset_path(path, options = {}) end
end
Public Instance Methods
Public: Generate a data URI for asset path.
path - Sass::Script::String logical asset path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 241 def asset_data_url(path) url = sprockets_context.asset_data_uri(path.value) Autoload::Sass::Script::String.new("url(" + url + ")") end
Public: Generate a url for asset path.
Default implementation is deprecated. Currently defaults to Sprockets::Context#asset_path.
Will raise NotImplementedError in the future. Users should provide their own base implementation.
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 108 def asset_path(path, options = {}) path = path.value path, _, query, fragment = URI.split(path)[5..8] path = sprockets_context.asset_path(path, options) query = "?#{query}" if query fragment = "##{fragment}" if fragment Autoload::Sass::Script::String.new("#{path}#{query}#{fragment}", :string) end
Public: Generate a asset url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 124 def asset_url(path, options = {}) Autoload::Sass::Script::String.new("url(#{asset_path(path, options).value})") end
Public: Generate url for audio path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 169 def audio_path(path) asset_path(path, type: :audio) end
Public: Generate a audio url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 178 def audio_url(path) asset_url(path, type: :audio) end
Public: Generate url for font path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 187 def font_path(path) asset_path(path, type: :font) end
Public: Generate a font url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 196 def font_url(path) asset_url(path, type: :font) end
Public: Generate url for image path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 133 def image_path(path) asset_path(path, type: :image) end
Public: Generate a image url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 142 def image_url(path) asset_url(path, type: :image) end
Public: Generate url for javascript path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 205 def javascript_path(path) asset_path(path, type: :javascript) end
Public: Generate a javascript url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 214 def javascript_url(path) asset_url(path, type: :javascript) end
Public: Generate url for stylesheet path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 223 def stylesheet_path(path) asset_path(path, type: :stylesheet) end
Public: Generate a stylesheet url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 232 def stylesheet_url(path) asset_url(path, type: :stylesheet) end
Public: Generate url for video path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 151 def video_path(path) asset_path(path, type: :video) end
Public: Generate a video url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
# File lib/sprockets/sass_processor.rb, line 160 def video_url(path) asset_url(path, type: :video) end
Protected Instance Methods
Deprecated: Get the Context instance. Use APIs on #sprockets_environment or #sprockets_dependencies directly.
Returns a Context instance.
# File lib/sprockets/sass_processor.rb, line 265 def sprockets_context options[:sprockets][:context] end
Public: Mutatable set of dependencies.
Returns a Set.
# File lib/sprockets/sass_processor.rb, line 257 def sprockets_dependencies options[:sprockets][:dependencies] end
Public: The Environment.
Returns Sprockets::Environment.
# File lib/sprockets/sass_processor.rb, line 250 def sprockets_environment options[:sprockets][:environment] end