Module: Sprockets::SassProcessor::Functions
- Defined in:
- lib/sprockets/sass_processor.rb
Overview
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, = {})
end
end
Instance Method Summary collapse
-
#asset_data_url(path) ⇒ Object
Public: Generate a data URI for asset path.
-
#asset_path(path, options = {}) ⇒ Object
Public: Generate a url for asset path.
-
#asset_url(path, options = {}) ⇒ Object
Public: Generate a asset url() link.
-
#audio_path(path) ⇒ Object
Public: Generate url for audio path.
-
#audio_url(path) ⇒ Object
Public: Generate a audio url() link.
-
#font_path(path) ⇒ Object
Public: Generate url for font path.
-
#font_url(path) ⇒ Object
Public: Generate a font url() link.
-
#image_path(path) ⇒ Object
Public: Generate url for image path.
-
#image_url(path) ⇒ Object
Public: Generate a image url() link.
-
#javascript_path(path) ⇒ Object
Public: Generate url for javascript path.
-
#javascript_url(path) ⇒ Object
Public: Generate a javascript url() link.
-
#stylesheet_path(path) ⇒ Object
Public: Generate url for stylesheet path.
-
#stylesheet_url(path) ⇒ Object
Public: Generate a stylesheet url() link.
-
#video_path(path) ⇒ Object
Public: Generate url for video path.
-
#video_url(path) ⇒ Object
Public: Generate a video url() link.
Instance Method Details
#asset_data_url(path) ⇒ Object
Public: Generate a data URI for asset path.
path - Sass::Script::String logical asset path
Returns a Sass::Script::String.
253 254 255 256 |
# File 'lib/sprockets/sass_processor.rb', line 253 def asset_data_url(path) url = sprockets_context.asset_data_uri(path.value) Autoload::Sass::Script::String.new("url(" + url + ")") end |
#asset_path(path, options = {}) ⇒ Object
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.
120 121 122 123 124 125 126 127 128 129 |
# File 'lib/sprockets/sass_processor.rb', line 120 def asset_path(path, = {}) path = path.value path, _, query, fragment = URI.split(path)[5..8] path = sprockets_context.asset_path(path, ) query = "?#{query}" if query fragment = "##{fragment}" if fragment Autoload::Sass::Script::String.new("#{path}#{query}#{fragment}", :string) end |
#asset_url(path, options = {}) ⇒ Object
Public: Generate a asset url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
136 137 138 |
# File 'lib/sprockets/sass_processor.rb', line 136 def asset_url(path, = {}) Autoload::Sass::Script::String.new("url(#{asset_path(path, ).value})") end |
#audio_path(path) ⇒ Object
Public: Generate url for audio path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
181 182 183 |
# File 'lib/sprockets/sass_processor.rb', line 181 def audio_path(path) asset_path(path, type: :audio) end |
#audio_url(path) ⇒ Object
Public: Generate a audio url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
190 191 192 |
# File 'lib/sprockets/sass_processor.rb', line 190 def audio_url(path) asset_url(path, type: :audio) end |
#font_path(path) ⇒ Object
Public: Generate url for font path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
199 200 201 |
# File 'lib/sprockets/sass_processor.rb', line 199 def font_path(path) asset_path(path, type: :font) end |
#font_url(path) ⇒ Object
Public: Generate a font url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
208 209 210 |
# File 'lib/sprockets/sass_processor.rb', line 208 def font_url(path) asset_url(path, type: :font) end |
#image_path(path) ⇒ Object
Public: Generate url for image path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
145 146 147 |
# File 'lib/sprockets/sass_processor.rb', line 145 def image_path(path) asset_path(path, type: :image) end |
#image_url(path) ⇒ Object
Public: Generate a image url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
154 155 156 |
# File 'lib/sprockets/sass_processor.rb', line 154 def image_url(path) asset_url(path, type: :image) end |
#javascript_path(path) ⇒ Object
Public: Generate url for javascript path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
217 218 219 |
# File 'lib/sprockets/sass_processor.rb', line 217 def javascript_path(path) asset_path(path, type: :javascript) end |
#javascript_url(path) ⇒ Object
Public: Generate a javascript url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
226 227 228 |
# File 'lib/sprockets/sass_processor.rb', line 226 def javascript_url(path) asset_url(path, type: :javascript) end |
#stylesheet_path(path) ⇒ Object
Public: Generate url for stylesheet path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
235 236 237 |
# File 'lib/sprockets/sass_processor.rb', line 235 def stylesheet_path(path) asset_path(path, type: :stylesheet) end |
#stylesheet_url(path) ⇒ Object
Public: Generate a stylesheet url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
244 245 246 |
# File 'lib/sprockets/sass_processor.rb', line 244 def stylesheet_url(path) asset_url(path, type: :stylesheet) end |
#video_path(path) ⇒ Object
Public: Generate url for video path.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
163 164 165 |
# File 'lib/sprockets/sass_processor.rb', line 163 def video_path(path) asset_path(path, type: :video) end |
#video_url(path) ⇒ Object
Public: Generate a video url() link.
path - Sass::Script::String URL path
Returns a Sass::Script::String.
172 173 174 |
# File 'lib/sprockets/sass_processor.rb', line 172 def video_url(path) asset_url(path, type: :video) end |