rails_app_generator 0.1.24 → 0.1.25

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 7e236768df446ce46cacc15f00e2f7d01b4199ce4925b6533b1ccf8dba8f340b
4
- data.tar.gz: ee76cae25541e6b59718df39674da78b3cd5417170d794863ea22a6e0866d4f1
3
+ metadata.gz: 8402636b2b1998543616a2cd272805b60b2f2376ccf9d0820d2763b92f204b8d
4
+ data.tar.gz: 3708271f45646622588ab76a546f685e0227c6eaa0c8bf4e8f7f17d98ee2e844
5
5
  SHA512:
6
- metadata.gz: '07950304f0c96819a02b3cce486e798dc961a3cf6efc78463be7ffeae8c9db84a63d588582dd69f7e0f8183d3159fa16d24da8fa69f59f8d56819dad38828f4f'
7
- data.tar.gz: fad5dd76e12615d58073cf586ece0b6eedc5d539fafa6484506afe11616a8e5749bb9ea1bbbeee0b7674dc39f3d2bf27cc5b74eba2115fda93978b22a3e47f14
6
+ metadata.gz: 225821de9ffbc1335ebbac6b5dd916257b3e4f5b26da84d67b79d331df4bf93d9f2b6f6524c81c55c9f8dda9bd57e96db29bb6d220eac0aacdd3574a9070fe38
7
+ data.tar.gz: 8e60366f1eacf5aabf9f34a44cac3d078818e314c9dda1576325942468ec922322f072a4ade15ec569b1a09868ffdec57d4c365b653528b4469c84c4236b807f
data/CHANGELOG.md CHANGED
@@ -1,3 +1,10 @@
1
+ ## [0.1.24](https://github.com/klueless-io/rails_app_generator/compare/v0.1.23...v0.1.24) (2022-08-06)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * remove addon rest-client ([28ff657](https://github.com/klueless-io/rails_app_generator/commit/28ff65783e9d80c436bd291a9f1578e62e99f08c))
7
+
1
8
  ## [0.1.23](https://github.com/klueless-io/rails_app_generator/compare/v0.1.22...v0.1.23) (2022-08-06)
2
9
 
3
10
 
@@ -0,0 +1,41 @@
1
+ # frozen_string_literal: true
2
+
3
+ # require 'pry'
4
+
5
+ # Makes http fun! Also, makes consuming restful web services dead easy.
6
+ #
7
+ # exe/rag addons/httparty
8
+
9
+ self.local_template_path = File.dirname(__FILE__)
10
+
11
+ gac 'base rails 7 image created'
12
+
13
+ add_controller('home', 'index', 'questions', 'users')
14
+ route("root 'home#index'")
15
+ # route("get 'home/stack_overflow'")
16
+
17
+ force_copy
18
+
19
+ copy_file 'app/controllers/home_controller.rb' , 'app/controllers/home_controller.rb'
20
+ copy_file 'app/views/home/index.html.erb' , 'app/views/home/index.html.erb'
21
+ copy_file 'app/views/home/questions.html.erb' , 'app/views/home/questions.html.erb'
22
+ copy_file 'app/views/home/users.html.erb' , 'app/views/home/users.html.erb'
23
+
24
+ copy_file 'app/views/layouts/_alerts.html.erb' , 'app/views/layouts/_alerts.html.erb'
25
+ copy_file 'app/views/layouts/_navbar.html.erb' , 'app/views/layouts/_navbar.html.erb'
26
+ copy_file 'app/views/layouts/_footer.html.erb' , 'app/views/layouts/_footer.html.erb'
27
+ template 'app/views/layouts/application.html.erb' , 'app/views/layouts/application.html.erb'
28
+
29
+ # Other template command examples
30
+ # css_install('tailwind')
31
+ # rails_command('db:migrate')
32
+ # bundle_add('hotwire-rails')
33
+ # rails_command('hotwire:install')
34
+ # run('bin/importmap pin sortablejs')
35
+ # run('npm install daisyui')
36
+ # create_file 'app/assets/stylesheets/custom-bootstrap-import.scss' , read_template('custom-bootstrap-import.scss')
37
+ # append_to_file 'app/assets/config/manifest.js' , read_template('manifest.js')
38
+ # insert_into_file 'app/views/layouts/application.html.erb', read_template('application.html.erb'),
39
+ # before: %( <%= javascript_include_tag "application", "data-turbo-track": "reload", defer: true %>)
40
+ # gsub_file 'app/views/layouts/application.html.erb', %(container mx-auto mt-28 px-5 flex), 'container mx-auto px-5'
41
+ # template 'home.css', 'app/assets/stylesheets/home.css'
@@ -0,0 +1,37 @@
1
+ class HomeController < ApplicationController
2
+ def index
3
+ end
4
+
5
+ def questions
6
+ @questions = StackExchange.new("stackoverflow", 1).questions
7
+ @questions = clean_data(@questions)
8
+ end
9
+
10
+ def users
11
+ @users = StackExchange.new("stackoverflow", 1).users
12
+ @users = clean_data(@users)
13
+ end
14
+
15
+ def clean_data(data)
16
+ encode_utf8 = data.to_json.encode('UTF-8', invalid: :replace, undef: :replace)
17
+ JSON.parse(encode_utf8)
18
+ end
19
+ end
20
+
21
+ class StackExchange
22
+ include HTTParty
23
+ base_uri 'api.stackexchange.com'
24
+
25
+ def initialize(service, page)
26
+ @options = { query: { site: service, page: page } }
27
+ end
28
+
29
+ def questions
30
+ self.class.get("/2.2/questions", @options)
31
+ end
32
+
33
+ def users
34
+ self.class.get("/2.2/users", @options)
35
+ end
36
+ end
37
+
@@ -0,0 +1,11 @@
1
+ <style>
2
+ .alert { color: red; }
3
+ .notice { color: green; }
4
+ </style>
5
+
6
+ <% flash.each do |type, msg| %><div class="<%= type %>"><%= msg %></div><% end %>
7
+ <% if flash.any? %><hr /><% end %>
8
+
9
+ <h1>Httparty</h1>
10
+
11
+ <h2>Makes http fun! Also, makes consuming restful web services dead easy.</h2>
@@ -0,0 +1,7 @@
1
+ <h1>Questions - HTTParty</h1>
2
+
3
+ <p>From <code>api.stackexchange.com</code></p>
4
+
5
+ <pre style="position: relative;">
6
+ <%= JSON.pretty_generate(@questions) %>
7
+ </pre>
@@ -0,0 +1,7 @@
1
+ <h1>Users - HTTParty</h1>
2
+
3
+ <p>From <code>api.stackexchange.com</code></p>
4
+
5
+ <pre style="position: relative;">
6
+ <%= JSON.pretty_generate(@users) %>
7
+ </pre>
@@ -0,0 +1,2 @@
1
+ <% flash.each do |type, msg| %><div class="<%= type %>"><%= msg %></div><% end %>
2
+ <% if flash.any? %><hr /><% end %>
@@ -0,0 +1,3 @@
1
+ <footer>
2
+ <hr />
3
+ </footer>
@@ -0,0 +1,6 @@
1
+ <header>
2
+ <%= link_to 'Home', root_path %> |
3
+ <%= link_to 'Questions', home_questions_path %> |
4
+ <%= link_to 'Users', home_users_path %> |
5
+ <hr />
6
+ </header>
@@ -0,0 +1,28 @@
1
+ <!DOCTYPE html>
2
+ <html>
3
+ <head>
4
+ <title><%= camelized %></title>
5
+ <meta name="viewport" content="width=device-width,initial-scale=1">
6
+ <%%= csrf_meta_tags %>
7
+ <%%= csp_meta_tag %>
8
+
9
+ <%- if options[:skip_hotwire] || options[:skip_javascript] -%>
10
+ <%%= stylesheet_link_tag "application" %>
11
+ <%- else -%>
12
+ <%%= stylesheet_link_tag "application", "data-turbo-track": "reload" %>
13
+ <%- end -%>
14
+ <style>
15
+ .alert { color: red; }
16
+ .notice { color: green; }
17
+ </style>
18
+ </head>
19
+
20
+ <body>
21
+ <%%= render 'layouts/navbar' %>
22
+ <main>
23
+ <%%= render 'layouts/alerts' %>
24
+ <%%= yield %>
25
+ </main>
26
+ <%%= render 'layouts/footer' %>
27
+ </body>
28
+ </html>
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ module RailsAppGenerator
4
+ # Custom add-ons for RailsAppGenerator
5
+ module AddOns
6
+ # Add MiniMagick to rails application
7
+ class MiniMagick < AddOn
8
+ required_gem gem.version('mini_magick', '4.11.0', 'Manipulate images with minimal use of memory via ImageMagick / GraphicsMagick')
9
+
10
+ def apply
11
+ say 'Setting up MiniMagick'
12
+ # template('mini_magick_template.rb', 'target/mini_magick.rb', force: true)
13
+ # template('app/javascript/stylesheets/components.scss')
14
+ # create_file('target/mini_magick.rb', 'put your content here')
15
+ # directory 'app/template', 'app/target', force: true
16
+ # empty_directory 'app/target'
17
+ # inject_into_file('app/application.js', "some content")
18
+ # rails_command('tailwindcss:install')
19
+ end
20
+
21
+ def before_bundle
22
+ say 'Setting up MiniMagick - before bundle install'
23
+ end
24
+
25
+ def after_bundle
26
+ say 'Setting up MiniMagick - after bundle install'
27
+ end
28
+ end
29
+ end
30
+ end
@@ -148,12 +148,13 @@ module RailsAppGenerator
148
148
  class_option :add_acts_as_list , type: :boolean, default: false
149
149
  class_option :add_browser , type: :boolean, default: false
150
150
  class_option :add_chartkick , type: :boolean, default: false
151
- class_option :add_groupdate , type: :boolean, default: false
152
151
  class_option :add_faker , type: :boolean, default: false
152
+ class_option :add_groupdate , type: :boolean, default: false
153
153
  class_option :add_hexapdf , type: :boolean, default: false
154
+ class_option :add_httparty , type: :boolean, default: false
154
155
  class_option :add_honeybadger , type: :boolean, default: false
156
+ class_option :add_mini_magick , type: :boolean, default: false
155
157
  class_option :add_rails_html_sanitizer , type: :boolean, default: false
156
- class_option :add_httparty , type: :boolean, default: false
157
158
  class_option :add_twilio_ruby , type: :boolean, default: false
158
159
 
159
160
  class << self
@@ -309,6 +310,7 @@ module RailsAppGenerator
309
310
  add_if(:high_voltage)
310
311
  add_if(:honeybadger)
311
312
  add_if(:lograge)
313
+ add_if(:mini_magick)
312
314
  add_if(:pundit)
313
315
  add_if(:rails_app_generator)
314
316
  add_if(:services)
@@ -67,6 +67,7 @@ module RailsAppGenerator
67
67
  register_option :add_hexapdf , type: :boolean, default: false
68
68
  register_option :add_httparty , type: :boolean, default: false
69
69
  register_option :add_honeybadger , type: :boolean, default: false
70
+ register_option :add_mini_magick , type: :boolean, default: false
70
71
  register_option :add_rails_html_sanitizer , type: :boolean, default: false
71
72
  register_option :add_twilio_ruby , type: :boolean, default: false
72
73
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RailsAppGenerator
4
- VERSION = '0.1.24'
4
+ VERSION = '0.1.25'
5
5
  end
data/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "rails_app_generator",
3
- "version": "0.1.24",
3
+ "version": "0.1.25",
4
4
  "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "rails_app_generator",
9
- "version": "0.1.24",
9
+ "version": "0.1.25",
10
10
  "dependencies": {
11
11
  "daisyui": "^2.20.0"
12
12
  },
data/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rails_app_generator",
3
- "version": "0.1.24",
3
+ "version": "0.1.25",
4
4
  "description": "Create new Rails Application with custom opinions",
5
5
  "scripts": {
6
6
  "release": "semantic-release"
@@ -0,0 +1,12 @@
1
+ {
2
+ "args": {
3
+ "app_path": "httparty",
4
+ "destination_root": "/Users/davidcruwys/dev/kgems/rails_app_generator/a/addons"
5
+ },
6
+ "opts": {
7
+ "skip_git": true,
8
+ "skip_test": true,
9
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/httparty/_.rb",
10
+ "add_httparty": true
11
+ }
12
+ }
@@ -1,5 +1,6 @@
1
1
  <header>
2
2
  <%= link_to 'Home', root_path %> |
3
+ <%# link_to 'Some Action', home_some_action_path %> |
3
4
  <%# link_to 'Products', products_path %> |
4
5
  <%# link_to 'Posts', posts_path %> |
5
6
  <%# link_to 'People', people_path %>
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: rails_app_generator
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.24
4
+ version: 0.1.25
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys
@@ -209,6 +209,15 @@ files:
209
209
  - after_templates/addons/honeybadger/app/views/home/index.html.erb
210
210
  - after_templates/addons/honeybadger/public/404.html
211
211
  - after_templates/addons/honeybadger/public/500.html
212
+ - after_templates/addons/httparty/_.rb
213
+ - after_templates/addons/httparty/app/controllers/home_controller.rb
214
+ - after_templates/addons/httparty/app/views/home/index.html.erb
215
+ - after_templates/addons/httparty/app/views/home/questions.html.erb
216
+ - after_templates/addons/httparty/app/views/home/users.html.erb
217
+ - after_templates/addons/httparty/app/views/layouts/_alerts.html.erb
218
+ - after_templates/addons/httparty/app/views/layouts/_footer.html.erb
219
+ - after_templates/addons/httparty/app/views/layouts/_navbar.html.erb
220
+ - after_templates/addons/httparty/app/views/layouts/application.html.erb
212
221
  - after_templates/addons/rails_html_sanitizer/_.rb
213
222
  - after_templates/addons/rails_html_sanitizer/home/index.html.erb
214
223
  - after_templates/addons/twilio_ruby/_.rb
@@ -368,6 +377,7 @@ files:
368
377
  - lib/rails_app_generator/addons/inline_svg.rb
369
378
  - lib/rails_app_generator/addons/irbrc.rb
370
379
  - lib/rails_app_generator/addons/lograge.rb
380
+ - lib/rails_app_generator/addons/mini_magick.rb
371
381
  - lib/rails_app_generator/addons/pundit.rb
372
382
  - lib/rails_app_generator/addons/rails_html_sanitizer.rb
373
383
  - lib/rails_app_generator/addons/rspec.rb
@@ -420,6 +430,7 @@ files:
420
430
  - profiles/addons/faker.json
421
431
  - profiles/addons/hexapdf.json
422
432
  - profiles/addons/honeybadger.json
433
+ - profiles/addons/httparty.json
423
434
  - profiles/addons/rails-html-sanitizer.json
424
435
  - profiles/addons/twilio_ruby.json
425
436
  - profiles/rag-add-some-pages.json