Sha256: 8d115d7def279b2d3a628a5e2215d7745bda4d4326cca374036bf3ae6a0ae5eb

Contents?: true

Size: 608 Bytes

Versions: 2

Compression:

Stored size: 608 Bytes

Contents

# encoding: utf-8
# frozen_string_literal: true

require 'execjs'

module OptimizeJS
  class << self
    def perform(js, options = {})
      @optimize_js ||= ExecJS.runtime.compile(File.read(js_path))
      raise OptimizeJS::CompileError unless @optimize_js
      @optimize_js.call(js_function, js, options)
    end

    def js_path
      File.expand_path('../optimize-js.web.min.js', File.dirname(__FILE__))
    end

    def js_function
      'optimizeJS'
    end
  end

  class CompileError < StandardError

  end
end

require 'optimize-js/sprockets-patch'
require 'optimize-js/railtie' if defined?(Rails)

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
optimize-js-1.0.3 lib/optimize-js.rb
optimize-js-1.0.2 lib/optimize-js.rb