Sha256: 9c5b447a3b817dc62289f603c3102c14fb635fcf2b4a862c4c42e5d02867029d

Contents?: true

Size: 1.1 KB

Versions: 9

Compression:

Stored size: 1.1 KB

Contents

require "yui/compressor"
require "closure-compiler"

module Lanes
    module API
        class AssetCompressor < Tilt::Template
            def self.engine_initialized?
                defined?(::YUI)
            end

            def initialize_engine
                require_template_library 'yui/compressor'
                require_template_library 'closure-compiler'
            end

            def prepare
            end

            def js
                # n.b. setting 'ADVANCED_OPTIMIZATIONS' doesn't work at this time, it
                # introduces JS errors :(  Haven't debugged further
                @js||=Closure::Compiler.new
            end
            def css
                @css ||= YUI::CssCompressor.new( :java_opts=>'-client' )
            end
            def evaluate(context, locals, &block)
                case context.content_type
                when 'application/javascript'
                    js.compile(data)
                when 'text/css'
                    css.compress(data)
                else
                    data
                end
            end
        end
    end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
lanes-0.1.9.5 lib/lanes/api/sprockets_compressor.rb
lanes-0.1.9 lib/lanes/api/sprockets_compressor.rb
lanes-0.1.8 lib/lanes/api/sprockets_compressor.rb
lanes-0.1.7 lib/lanes/api/sprockets_compressor.rb
lanes-0.1.6 lib/lanes/api/sprockets_compressor.rb
lanes-0.1.5 lib/lanes/api/sprockets_compressor.rb
lanes-0.1.2 lib/lanes/api/sprockets_compressor.rb
lanes-0.1.0 lib/lanes/api/sprockets_compressor.rb
lanes-0.0.8 lib/lanes/api/sprockets_compressor.rb