module Opal::UseGem

def require_paths_for_gem(gem_name, include_dependencies)

def require_paths_for_gem(gem_name, include_dependencies)
  paths = []
  spec = Gem::Specification.find_by_name(gem_name)
  spec.runtime_dependencies.each do |dependency|
    paths += require_paths_for_gem(dependency.name, include_dependencies)
  end if include_dependencies
  gem_dir = spec.gem_dir
  spec.require_paths.map do |path|
    paths << File.join(gem_dir, path)
  end
  paths
end

def use_gem(gem_name, include_dependencies = true)

Parameters:
  • include_dependencies (Boolean) -- whether or not to add recursively
  • gem_name (String) -- the name of the gem
def use_gem(gem_name, include_dependencies = true)
  append_paths(*require_paths_for_gem(gem_name, include_dependencies))
end