Sha256: 476e47adc3a9d3a2b8eb1502635b9b69e08d7b4d895f1a7d396112e8fc962025

Contents?: true

Size: 814 Bytes

Versions: 10

Compression:

Stored size: 814 Bytes

Contents

module Nanoc::Filters
  # @api private
  class Sass < Nanoc::Filter
    requires 'sass', 'nanoc/filters/sass/sass_filesystem_importer'

    # Runs the content through [Sass](http://sass-lang.com/).
    # Parameters passed to this filter will be passed on to Sass.
    #
    # @param [String] content The content to filter
    #
    # @return [String] The filtered content
    def run(content, params = {})
      options = params.merge(
        nanoc_current_filter: self,
        filename: @item && @item.raw_filename,
      )
      engine = ::Sass::Engine.new(content, options)
      engine.render
    end

    def imported_filename_to_item(filename)
      @items.find do |i|
        i.raw_filename &&
          Pathname.new(i.raw_filename).realpath == Pathname.new(filename).realpath
      end
    end
  end
end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
nanoc-4.1.3 lib/nanoc/filters/sass.rb
nanoc-4.1.2 lib/nanoc/filters/sass.rb
nanoc-4.1.1 lib/nanoc/filters/sass.rb
nanoc-4.1.0 lib/nanoc/filters/sass.rb
nanoc-4.1.0rc2 lib/nanoc/filters/sass.rb
nanoc-4.1.0rc1 lib/nanoc/filters/sass.rb
nanoc-4.1.0b1 lib/nanoc/filters/sass.rb
nanoc-4.1.0a1 lib/nanoc/filters/sass.rb
nanoc-4.0.2 lib/nanoc/filters/sass.rb
nanoc-4.0.1 lib/nanoc/filters/sass.rb