module Gumdrop::Support::Compressor
Public Instance Methods
compress(content, opts)
click to toggle source
# File lib/gumdrop/support/compressor.rb, line 6 def compress(content, opts) case opts when Symbol, String do_compress content, opts.to_s.to_sym when Hash do_compress content, opts[:with].to_s.to_sym, opts else # UNKNOWN Compressor type! log.warn "Unknown javascript compressor type!" content end end
Private Instance Methods
do_compress(content, type, opts={})
click to toggle source
# File lib/gumdrop/support/compressor.rb, line 21 def do_compress(content, type, opts={}) case type when :jsmin require 'jsmin' JSMin.minify content when :yuic require "yui/compressor" compressor = YUI::JavaScriptCompressor.new(:munge => opts[:obfuscate]) compressor.compress(content) when :uglify require "uglifier" Uglifier.compile( content, :mangle=>opts[:obfuscate]) when :packr require 'packr' Packr.pack(content, :shrink_vars => true, :base62 => false, :private=>false) else # UNKNOWN Compressor type! log.warn "Unknown javascript compressor type! (#{ type })" content end end