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 274 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 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 141 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 157 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 202 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 211 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 220 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 229 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 166 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 175 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 238 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 247 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 256 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 265 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 184 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 193 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 298 def sprockets_context options[:sprockets][:context] end
Public: Mutatable set of dependencies.
Returns a Set.
# File lib/sprockets/sass_processor.rb, line 290 def sprockets_dependencies options[:sprockets][:dependencies] end
Public: The Environment
.
Returns Sprockets::Environment
.
# File lib/sprockets/sass_processor.rb, line 283 def sprockets_environment options[:sprockets][:environment] end