Sha256: 713352b6ab1218b4dd62b6773fe1dfa4f5253c8f8ddb8e41233d8fad72a5fed7

Contents?: true

Size: 1.49 KB

Versions: 7

Compression:

Stored size: 1.49 KB

Contents

module Jekyll
  module Assets
    module Processors
      class Liquid
        FOR = %W(
          text/css text/sass text/less application/javascript
          text/scss text/coffeescript text/javascript).freeze
        EXT = %W(.liquid .js.liquid .css.liquid .scss.liquid).freeze

        # --------------------------------------------------------------------

        def self.call(context, jekyll = context[:environment].jekyll)
          if context[:environment].parent.asset_config["features"]["liquid"] ||
              File.extname(context[:filename]) == ".liquid"

            payload_ = jekyll.site_payload
            renderer = jekyll.liquid_renderer.file(context[:filename])
            context[:data] = renderer.parse(context[:data]).render! payload_, \
              :filters => [Jekyll::Filters],
              :registers => {
                :site => jekyll
              }
          end
        end
      end
    end
  end
end

# ----------------------------------------------------------------------------
# There might be a few missing, if there is please do let me know.
# ----------------------------------------------------------------------------

Jekyll::Assets::Processors::Liquid::EXT.each do |ext|
  Sprockets.register_engine(
    ext, Jekyll::Assets::Processors::Liquid
  )
end

# ----------------------------------------------------------------------------

Jekyll::Assets::Processors::Liquid::FOR.each do |val|
  Sprockets.register_preprocessor(
    val, Jekyll::Assets::Processors::Liquid
  )
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
jekyll-assets-2.2.7 lib/jekyll/assets/processors/liquid.rb
jekyll-assets-2.2.6 lib/jekyll/assets/processors/liquid.rb
jekyll-assets-2.2.5 lib/jekyll/assets/processors/liquid.rb
jekyll-assets-2.2.4 lib/jekyll/assets/processors/liquid.rb
jekyll-assets-2.2.3 lib/jekyll/assets/processors/liquid.rb
jekyll-assets-2.2.2 lib/jekyll/assets/processors/liquid.rb
jekyll-assets-2.2.1 lib/jekyll/assets/processors/liquid.rb