module Condenser::SassTransformer::Functions
Public: Functions
injected into Sass context during Condenser
evaluation.
This module may be extended to add global functionality to all Condenser
Sass environments. Though, scoping your functions to just your environment is preferred.
module Condenser::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/condenser/transformers/sass_transformer.rb, line 277 def asset_data_url(path) url = condenser_environment.asset_data_uri(path.value) 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/condenser/transformers/sass_transformer.rb, line 143 def asset_path(path, options = {}) path = path.value path, _, query, fragment = URI.split(path)[5..8] asset = condenser_environment.find!(path) condenser_context.link_asset(path) path = condenser_context.asset_path(asset.path, options) query = "?#{query}" if query fragment = "##{fragment}" if fragment SassC::Script::Value::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/condenser/transformers/sass_transformer.rb, line 160 def asset_url(path, options = {}) SassC::Script::Value::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/condenser/transformers/sass_transformer.rb, line 205 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/condenser/transformers/sass_transformer.rb, line 214 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/condenser/transformers/sass_transformer.rb, line 223 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/condenser/transformers/sass_transformer.rb, line 232 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/condenser/transformers/sass_transformer.rb, line 169 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/condenser/transformers/sass_transformer.rb, line 178 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/condenser/transformers/sass_transformer.rb, line 241 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/condenser/transformers/sass_transformer.rb, line 250 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/condenser/transformers/sass_transformer.rb, line 259 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/condenser/transformers/sass_transformer.rb, line 268 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/condenser/transformers/sass_transformer.rb, line 187 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/condenser/transformers/sass_transformer.rb, line 196 def video_url(path) asset_url(path, type: :video) end
Protected Instance Methods
Public: The Environment.
Returns Condenser::Environment
.
# File lib/condenser/transformers/sass_transformer.rb, line 286 def condenser_context options[:condenser][:context] end
Public: Mutatable set of dependencies.
Returns a Set.
# File lib/condenser/transformers/sass_transformer.rb, line 297 def condenser_dependencies options[:condenser][:process_dependencies] end
# File lib/condenser/transformers/sass_transformer.rb, line 290 def condenser_environment options[:condenser][:environment] end