Sha256: eca45ae2f62866ca9e21b8b519d56b12769c577710c3f21f2bed2a4151e5b783

Contents?: true

Size: 1.14 KB

Versions: 43

Compression:

Stored size: 1.14 KB

Contents

module WebFontLoader
  class Modules

    def initialize(*modules)
      @project_root = WebFontLoader::ProjectRoot
      @js_src = "src"
      @js_test = "src-test"
      @modules = modules.empty? ? config.keys : modules
      # Make sure 'core' is first.
      @modules.unshift "core"
      @modules.uniq!
    end

    attr_reader :modules
    attr_accessor :project_root, :js_src, :js_test

    def all_source_files
      @all_source_files ||= begin
        modules.map { |mod| config[mod] }.compact.flatten.map { |f| File.join(js_src, f) }
      end
    end

    def all_test_globs
      @all_test_globs ||= begin
        js_test_dirs = Dir[File.join(project_root, js_test, "*")].map { |d| File.basename(d) }
        js_test_dirs.map { |dir| File.join(js_test, dir, "*.js") if modules.include?(dir) }.compact
      end
    end

    def js_output_wrapper(source, version)
      File.read(File.join(js_src, "closure.js")).sub("{{source}}", source).sub("{{version}}", version)
    end

  protected

    def config
      @config ||= begin
        path = File.join(project_root, js_src)
        YAML.load_file(File.join(path, "modules.yml"))
      end
    end

  end
end

Version data entries

43 entries across 43 versions & 1 rubygems

Version Path
webfontloader-1.6.24 lib/webfontloader/modules.rb
webfontloader-1.6.23 lib/webfontloader/modules.rb
webfontloader-1.6.22 lib/webfontloader/modules.rb
webfontloader-1.6.21 lib/webfontloader/modules.rb
webfontloader-1.6.20 lib/webfontloader/modules.rb
webfontloader-1.6.19 lib/webfontloader/modules.rb
webfontloader-1.6.18 lib/webfontloader/modules.rb
webfontloader-1.6.16 lib/webfontloader/modules.rb
webfontloader-1.6.15 lib/webfontloader/modules.rb
webfontloader-1.6.14 lib/webfontloader/modules.rb
webfontloader-1.6.13 lib/webfontloader/modules.rb
webfontloader-1.6.12 lib/webfontloader/modules.rb
webfontloader-1.6.11 lib/webfontloader/modules.rb
webfontloader-1.6.10 lib/webfontloader/modules.rb
webfontloader-1.6.9 lib/webfontloader/modules.rb
webfontloader-1.6.8 lib/webfontloader/modules.rb
webfontloader-1.6.7 lib/webfontloader/modules.rb
webfontloader-1.6.6 lib/webfontloader/modules.rb
webfontloader-1.6.5 lib/webfontloader/modules.rb
webfontloader-1.6.4 lib/webfontloader/modules.rb