Sha256: 801d83d992ed29a71af0ba6835d7dabe7e9b373547589cf8ee7bf21f3247d05d
Contents?: true
Size: 880 Bytes
Versions: 4
Compression:
Stored size: 880 Bytes
Contents
begin require "yui/compressor" rescue LoadError puts "YUI-Compressor not available. Install it with: gem install yui-compressor" end module Middleman module Rack class MinifyJavascript def initialize(app, options={}) @app = app end def call(env) if env["DOWNSTREAM"] && env["PATH_INFO"].match(/\.js$/) && Middleman::Base.enabled?(:minify_javascript) compressor = ::YUI::JavaScriptCompressor.new(:munge => true) source = env["DOWNSTREAM"][2].is_a?(::Rack::File) ? File.read(env["DOWNSTREAM"][2].path) : env["DOWNSTREAM"][2] env["DOWNSTREAM"][2] = compressor.compress(source) env["DOWNSTREAM"][1]["Content-Length"] = ::Rack::Utils.bytesize(env["DOWNSTREAM"][2]).to_s end @app.call(env) end end end end # Middleman::Base.supported_formats << "js"
Version data entries
4 entries across 4 versions & 1 rubygems