Sha256: 26053b29abc5a43044abcca7d53f6bbfd23dc4584c8f6f6d038b3b61e18ca23a

Contents?: true

Size: 607 Bytes

Versions: 8

Compression:

Stored size: 607 Bytes

Contents

module Massimo
  class Javascript < Massimo::Resource
    def render
      case source_path.extname.to_s
      when '.coffee'
        require 'coffee-script' unless defined?(CoffeeScript)
        CoffeeScript.compile(content)
      else
        require 'sprockets' unless defined?(Sprockets)
        secretary = Sprockets::Secretary.new(
          :assert_root  => Massimo.config.output_path,
          :source_files => [ source_path.to_s ]
        )
        secretary.install_assets
        secretary.concatenation.to_s
      end
    end
    
    def extension
      @extension ||= '.js'
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
massimo-0.6.0 lib/massimo/javascript.rb
massimo-0.5.6 lib/massimo/javascript.rb
massimo-0.5.5 lib/massimo/javascript.rb
massimo-0.5.4 lib/massimo/javascript.rb
massimo-0.5.3 lib/massimo/javascript.rb
massimo-0.5.2 lib/massimo/javascript.rb
massimo-0.5.1 lib/massimo/javascript.rb
massimo-0.5.0 lib/massimo/javascript.rb