class WebFontLoader::Modules
Attributes
js_src[RW]
js_test[RW]
modules[R]
project_root[RW]
Public Class Methods
new(*modules)
click to toggle source
# File lib/webfontloader/modules.rb, line 4 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
Public Instance Methods
all_source_files()
click to toggle source
# File lib/webfontloader/modules.rb, line 17 def all_source_files @all_source_files ||= begin modules.map { |mod| config[mod] }.compact.flatten.map { |f| File.join(js_src, f) } end end
all_test_globs()
click to toggle source
# File lib/webfontloader/modules.rb, line 23 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
js_output_wrapper(source, version)
click to toggle source
# File lib/webfontloader/modules.rb, line 30 def js_output_wrapper(source, version) File.read(File.join(js_src, "closure.js")).sub("{{source}}", source).sub("{{version}}", version).gsub(/\n|\r/,"") end
Protected Instance Methods
config()
click to toggle source
# File lib/webfontloader/modules.rb, line 36 def config @config ||= begin path = File.join(project_root, js_src) YAML.load_file(File.join(path, "modules.yml")) end end