Sha256: e6cc75f4b27af3892213aa8057ea6450259172d8cd3dd6a1934d7d3e3943a7ea

Contents?: true

Size: 1.4 KB

Versions: 1

Compression:

Stored size: 1.4 KB

Contents

require "erb"

module Gem
  class Packer
    attr_reader :project

    def initialize(prj)
      @project = prj
    end

    def pack!(dst)
      dst = File.join(dst, @project.rails_assets_dir_name)
      FileUtils.mkdir_p(dst)

      write_readme(dst)
      write_gemspec(dst)
      write_gemfile(dst)
      write_rakefile(dst)
      write_engine_file(dst)
      write_version_file(dst)
      write_js_assets(dst)
      write_css_assets(dst)
      write_font_assets(dst)
      write_image_assets(dst)
    end

    private

    def write_readme(dst)
      Gem::Writter::Readme.new(@project).write(dst)
    end

    def write_gemspec(dst)
      Gem::Writter::Gemspec.new(@project).write(dst)
    end

    def write_gemfile(dst)
      Gem::Writter::Gemfile.new(@project).write(dst)
    end

    def write_rakefile(dst)
      Gem::Writter::Rakefile.new(@project).write(dst)
    end

    def write_engine_file(dst)
      Gem::Writter::Engine.new(@project).write(dst)
    end

    def write_version_file(dst)
      Gem::Writter::Version.new(@project).write(dst)
    end

    def write_js_assets(dst)
      Gem::Writter::JS.new(@project).write(dst)
    end

    def write_css_assets(dst)
      Gem::Writter::CSS.new(@project).write(dst)
    end

    def write_font_assets(dst)
      Gem::Writter::Font.new(@project).write(dst)
    end

    def write_image_assets(dst)
      Gem::Writter::Image.new(@project).write(dst)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
rab-0.1.0 lib/rab/gem/packer.rb