Sha256: 28e1f6c3857525f1254fcd78b933221a746660b8cebf6f244e955f2f43f087f0

Contents?: true

Size: 840 Bytes

Versions: 4

Compression:

Stored size: 840 Bytes

Contents

require "tilt"

module Sprockets
  module Sass
    class SassTemplate < Tilt::SassTemplate
      
      # A reference to the current Sprockets context
      attr_reader :context
      
      # Define the expected syntax for the template
      def syntax
        :sass
      end
      
      def prepare
        @context = nil
        @output  = nil
      end
      
      def evaluate(context, locals, &block)
        @output ||= begin
          @context = context
          ::Sass::Engine.new(data, sass_options).render
        end
      end

      private
      
      def sass_options
        options.merge(
          :filename => eval_file,
          :line     => line,
          :syntax   => syntax,
          :importer => importer
        )
      end
      
      def importer
        Importer.new context
      end
    end
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
sprockets-sass-0.2.2 lib/sprockets/sass/sass_template.rb
sprockets-sass-0.2.1 lib/sprockets/sass/sass_template.rb
sprockets-sass-0.2.0 lib/sprockets/sass/sass_template.rb
sprockets-sass-0.1.0 lib/sprockets/sass/sass_template.rb