Sha256: 5bf52e03cca69cde99b508020de82ab37db40e491e50f5e1566684418c710a6b

Contents?: true

Size: 1.55 KB

Versions: 8

Compression:

Stored size: 1.55 KB

Contents

# frozen_string_literal: true

module PagesCore
  module Generators
    class FrontendGenerator < Rails::Generators::Base
      desc "Creates the default Pages frontend"
      source_root File.expand_path("templates", __dir__)

      def create_layout
        copy_file(
          "application.html.erb",
          File.join("app/views/layouts/application.html.erb")
        )
      end

      def create_css_framework
        ["application.sass.scss",
         "config.scss",
         "components/base.scss",
         "framework/breakpoints.scss",
         "framework/clearfix.scss",
         "framework/grid.scss",
         "framework/grid_overlay.scss",
         "framework/fonts.scss",
         "global/colors.scss",
         "global/typography.scss",
         "vendor/normalize.css"].each do |f|
          template("stylesheets/#{f}", File.join("app/assets/stylesheets/#{f}"))
        end
      end

      def create_js_framework
        ["lib/ResponsiveEmbeds.js",
         "lib/GridOverlay.js"].each do |f|
          template("javascript/#{f}", File.join("app/javascript/#{f}"))
        end

        append_to_file "app/javascript/application.js" do
          <<~JS
            // Responsive embeds
            import ResponsiveEmbeds from "./lib/ResponsiveEmbeds";
            ResponsiveEmbeds.start();

            // Grid overlay
            import GridOverlay from "./lib/GridOverlay";
            GridOverlay.start();
          JS
        end
      end

      def remove_application_css
        remove_file("app/assets/stylesheets/application.css")
      end
    end
  end
end

Version data entries

8 entries across 8 versions & 1 rubygems

Version Path
pages_core-3.12.1 lib/rails/generators/pages_core/frontend/frontend_generator.rb
pages_core-3.12.0 lib/rails/generators/pages_core/frontend/frontend_generator.rb
pages_core-3.11.3 lib/rails/generators/pages_core/frontend/frontend_generator.rb
pages_core-3.11.2 lib/rails/generators/pages_core/frontend/frontend_generator.rb
pages_core-3.11.1 lib/rails/generators/pages_core/frontend/frontend_generator.rb
pages_core-3.11.0 lib/rails/generators/pages_core/frontend/frontend_generator.rb
pages_core-3.10.2 lib/rails/generators/pages_core/frontend/frontend_generator.rb
pages_core-3.10.1 lib/rails/generators/pages_core/frontend/frontend_generator.rb