Sha256: e982eb56d38e06322cc33d5b3eebf3f624ad6e6be15b8cbabd079039ec645a79

Contents?: true

Size: 1.01 KB

Versions: 60

Compression:

Stored size: 1.01 KB

Contents

# frozen_string_literal: true

require_relative "../../lib/plutonium_generators"

module Pu
  module Pkg
    class PackageGenerator < Rails::Generators::Base
      include PlutoniumGenerators::Generator

      source_root File.expand_path("templates", __dir__)

      desc "Create a plutonium package"

      argument :name

      def start
        validate_package_name package_name

        template "lib/engine.rb", "packages/#{package_namespace}/lib/engine.rb"

        %w[controllers interactions models policies definitions].each do |dir|
          directory "app/#{dir}", "packages/#{package_namespace}/app/#{dir}/#{package_namespace}"
        end
        create_file "packages/#{package_namespace}/app/views/#{package_namespace}/.keep"
      rescue => e
        exception "#{self.class} failed:", e
      end

      private

      def package_name
        name.camelize
      end

      def package_namespace
        package_name.underscore
      end

      def package_type
        "Package::Engine"
      end
    end
  end
end

Version data entries

60 entries across 60 versions & 1 rubygems

Version Path
plutonium-0.20.4 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.20.3 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.20.1 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.20.0 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.13 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.12 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.11 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.10 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.9 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.8 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.7 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.6 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.5 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.4 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.3 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.2 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.1 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.19.0 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.18.8 lib/generators/pu/pkg/package/package_generator.rb
plutonium-0.18.7 lib/generators/pu/pkg/package/package_generator.rb