Sha256: 8387acaac7a3e9294fec667cdc0a0be79357e1fa6ad38e8302503d0c00206efe

Contents?: true

Size: 1.45 KB

Versions: 6

Compression:

Stored size: 1.45 KB

Contents

require "rails/generators"
require File.expand_path("../generator_helper", __FILE__)
include GeneratorHelper

module ReactOnRails
  module Generators
    class ReactNoReduxGenerator < Rails::Generators::Base
      hide!
      source_root(File.expand_path("../templates", __FILE__))

      # --server-rendering
      class_option :server_rendering,
                   type: :boolean,
                   default: false,
                   desc: "Configure for server-side rendering of webpack JavaScript",
                   aliases: "-S"

      def copy_base_files
        base_path = "no_redux/base/"
        %w(client/app/bundles/HelloWorld/components/HelloWorldWidget.jsx
           client/app/bundles/HelloWorld/containers/HelloWorld.jsx).each do |file|
             copy_file(base_path + file, file)
           end
      end

      def copy_server_rendering_files_if_appropriate
        return unless options.server_rendering?
        base_path = "no_redux/server_rendering/"
        %w(client/app/bundles/HelloWorld/startup/HelloWorldAppServer.jsx).each do |file|
          copy_file(base_path + file, file)
        end
      end

      def template_appropriate_version_of_hello_world_app_client
        filename = options.server_rendering? ? "HelloWorldAppClient.jsx" : "HelloWorldApp.jsx"
        location = "client/app/bundles/HelloWorld/startup"
        template("no_redux/base/#{location}/HelloWorldAppClient.jsx.tt", "#{location}/#{filename}")
      end
    end
  end
end

Version data entries

6 entries across 6 versions & 1 rubygems

Version Path
react_on_rails-1.2.0 lib/generators/react_on_rails/react_no_redux_generator.rb
react_on_rails-1.2.0.rc1 lib/generators/react_on_rails/react_no_redux_generator.rb
react_on_rails-1.1.1 lib/generators/react_on_rails/react_no_redux_generator.rb
react_on_rails-1.1.0 lib/generators/react_on_rails/react_no_redux_generator.rb
react_on_rails-1.0.3 lib/generators/react_on_rails/react_no_redux_generator.rb
react_on_rails-1.0.2 lib/generators/react_on_rails/react_no_redux_generator.rb