Sha256: 31d72cc00390dae024da8b0b2a48218743ce1cc7669a9281b12e45bcc15c39fd
Contents?: true
Size: 1.2 KB
Versions: 3
Compression:
Stored size: 1.2 KB
Contents
module Massimo class Javascript < Massimo::Resource def render compress(compile) end def extension @extension ||= '.js' end protected def compile case source_path.extname when '.coffee' require 'coffee-script' unless defined?(CoffeeScript) CoffeeScript.compile(content, Massimo.config.options_for(:coffee_script)) else require 'sprockets' unless defined?(Sprockets) options = Massimo.config.options_for(:sprockets).merge( :assert_root => Massimo.config.output_path, :source_files => [ source_path.to_s ] ) secretary = Sprockets::Secretary.new(options) secretary.install_assets secretary.concatenation.to_s end end def compress(javascript) case Massimo.config.javascripts_compressor.to_s when 'min', 'jsmin' require 'jsmin' unless defined?(JSMin) JSMin.minify(javascript).strip when 'pack', 'packr' require 'packr' unless defined?(Packr) options = { :shrink_vars => true }.merge Massimo.config.options_for(:packr) Packr.pack(javascript, options) else javascript end end end end
Version data entries
3 entries across 3 versions & 1 rubygems
Version | Path |
---|---|
massimo-0.7.3 | lib/massimo/javascript.rb |
massimo-0.7.2 | lib/massimo/javascript.rb |
massimo-0.7.1 | lib/massimo/javascript.rb |