rails_app_generator 0.2.7 → 0.2.8

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 445a95cd20f4f77c1ac1e1cc587d7c613718f0a78e0e1b3fd4b7bb9fbb4c7b0a
4
- data.tar.gz: 28fa7c5091cccb5b7610a11748dcd197bde5cd2319cb696fbb961066ff6831ef
3
+ metadata.gz: 3e803a1080601b2097577a2d62570ed49a99e4ba73a5d17308e116a3da303ea9
4
+ data.tar.gz: 0ce18a4307afb75ceaa51ec62f24e25a30cd32b96a32a5e7c5a3269a960eaec2
5
5
  SHA512:
6
- metadata.gz: 12e593aa71b493ff0e9aa96b3a180c86b19230a2aa247e309467fcffcd30c5e2869c43c97b2e3c0b3e68b72dcc7b3097d7dbc69e49af08911a2ab899c40f39d8
7
- data.tar.gz: '0783313d06b010a6c7ba215b61e2f2bad5d7c32c42b016d3844a886fd2f435fd76f2756ae2af6645ebdc73a08dd645c836b22f764b3153c5823f2ca77619fb4a'
6
+ metadata.gz: 1863f937b018927dc812d5fddbd36af00cb77b0c6e9e1550cf060fd08007a11d1c0a9824e87d0deea328a583e5c75b584a529a55c006a0fb509d2333ae0f0c2f
7
+ data.tar.gz: a9a0814e79a2dc2eca868ec1e1e60849362063668970bb5e4bbeda998c70e65ab2ea9f0e54cc13507d8e624002857812ae5b18251b3d6ae040dc603cc5d53b57
data/CHANGELOG.md CHANGED
@@ -1,3 +1,11 @@
1
+ ## [0.2.7](https://github.com/klueless-io/rails_app_generator/compare/v0.2.6...v0.2.7) (2022-08-11)
2
+
3
+
4
+ ### Bug Fixes
5
+
6
+ * add bcrypt_ruby addon ([34eb3ca](https://github.com/klueless-io/rails_app_generator/commit/34eb3ca4236804dec52ea995addbb1e3749336d9))
7
+ * add bcrypt_ruby addon ([4622249](https://github.com/klueless-io/rails_app_generator/commit/4622249b03ab204728432d04d4743e8ba8569ec3))
8
+
1
9
  ## [0.2.6](https://github.com/klueless-io/rails_app_generator/compare/v0.2.5...v0.2.6) (2022-08-10)
2
10
 
3
11
 
@@ -0,0 +1,37 @@
1
+ # frozen_string_literal: true
2
+
3
+ # bcrypt() is a sophisticated and secure hash algorithm designed by The OpenBSD project for hashing passwords.
4
+ #
5
+ # exe/rag addons/bcrypt_ruby
6
+
7
+ self.local_template_path = File.dirname(__FILE__)
8
+
9
+ gac 'base rails 7 image created'
10
+
11
+ bundle_install
12
+
13
+ add_controller('home', 'index')
14
+
15
+ route("root 'home#index'")
16
+
17
+ force_copy
18
+
19
+ directory "app/controllers"
20
+ directory "app/views/home"
21
+ directory "app/views/layouts"
22
+ template 'app/views/layouts/application.html.erb' , 'app/views/layouts/application.html.erb'
23
+
24
+ template 'db/seeds.rb' , 'db/seeds.rb'
25
+
26
+ after_bundle do
27
+ setup_db
28
+ end
29
+
30
+ def setup_db
31
+ add_scaffold('user', 'name', 'password', 'password_hash')
32
+ directory "app/models"
33
+ directory "app/views/users"
34
+
35
+ db_migrate
36
+ db_seed
37
+ end
@@ -0,0 +1,7 @@
1
+ class HomeController < ApplicationController
2
+ def index
3
+ end
4
+
5
+ def some_action
6
+ end
7
+ end
@@ -0,0 +1,20 @@
1
+ require 'bcrypt'
2
+
3
+ class User < ApplicationRecord
4
+ # users.password_hash in the database is a :string
5
+ include BCrypt
6
+
7
+ def password
8
+ return nil if password_hash.nil?
9
+ @password ||= Password.new(password_hash)
10
+ end
11
+
12
+ def password=(new_password)
13
+ @password = Password.create(new_password)
14
+ self.password_hash = @password
15
+ end
16
+
17
+ def match?(password)
18
+ self.password == password
19
+ end
20
+ end
@@ -0,0 +1,9 @@
1
+ <h1>Bcrypt ruby</h1>
2
+
3
+ <h2>bcrypt() is a sophisticated and secure hash algorithm designed by The OpenBSD project for hashing passwords.</h2>
4
+
5
+ <p>If you are using Rails you should probaly be using <code>ActiveModel::SecurePassword</code> instead of using bcrypt</p>
6
+
7
+
8
+
9
+
@@ -0,0 +1,3 @@
1
+ <footer>
2
+ <hr />
3
+ </footer>
@@ -0,0 +1,5 @@
1
+ <header>
2
+ <%= link_to 'Home', root_path %> |
3
+ <%= link_to 'Users', users_path %>
4
+ <hr />
5
+ </header>
@@ -0,0 +1,23 @@
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
+ </head>
15
+
16
+ <body>
17
+ <%%= render 'layouts/navbar' %>
18
+ <main>
19
+ <%%= yield %>
20
+ </main>
21
+ <%%= render 'layouts/footer' %>
22
+ </body>
23
+ </html>
@@ -0,0 +1,27 @@
1
+ <%= form_with(model: user) do |form| %>
2
+ <% if user.errors.any? %>
3
+ <div style="color: red">
4
+ <h2><%= pluralize(user.errors.count, "error") %> prohibited this user from being saved:</h2>
5
+
6
+ <ul>
7
+ <% user.errors.each do |error| %>
8
+ <li><%= error.full_message %></li>
9
+ <% end %>
10
+ </ul>
11
+ </div>
12
+ <% end %>
13
+
14
+ <div>
15
+ <%= form.label :name, style: "display: block" %>
16
+ <%= form.text_field :name %>
17
+ </div>
18
+
19
+ <div>
20
+ <%= form.label :password, style: "display: block" %>
21
+ <%= form.text_field :password %>
22
+ </div>
23
+
24
+ <div>
25
+ <%= form.submit %>
26
+ </div>
27
+ <% end %>
@@ -0,0 +1,17 @@
1
+ <div id="<%= dom_id user %>">
2
+ <p>
3
+ <strong>Name:</strong>
4
+ <%= user.name %>
5
+ </p>
6
+
7
+ <p>
8
+ <strong>Password:</strong>
9
+ <%= user.password %>
10
+ </p>
11
+
12
+ <p>match?('password1'): <%= user.match?('password1') ? '<strong>TRUE</strong>'.html_safe : false %></p>
13
+ <p>match?('password2'): <%= user.match?('password2') ? '<strong>TRUE</strong>'.html_safe : false %></p>
14
+ <p>match?('password3'): <%= user.match?('password3') ? '<strong>TRUE</strong>'.html_safe : false %></p>
15
+ <p>match?('hello'): <%= user.match?('hello') ? '<strong>TRUE</strong>'.html_safe : false %></p>
16
+
17
+ </div>
@@ -0,0 +1,3 @@
1
+ david = User.create(name: 'david', password: 'password1')
2
+ james = User.create(name: 'james', password: 'password2')
3
+ sally = User.create(name: 'sally', password: 'password3')
@@ -37,6 +37,7 @@
37
37
  "add_lograge": false,
38
38
  "add_acts_as_list": false,
39
39
  "add_browser": false,
40
+ "add_bcrypt_ruby": true,
40
41
  "add_chartkick": false,
41
42
  "add_faker": false,
42
43
  "add_groupdate": false,
@@ -44,10 +45,10 @@
44
45
  "add_httparty": false,
45
46
  "add_honeybadger": false,
46
47
  "add_mini_magick": false,
47
- "add_phony_rails": true,
48
+ "add_phony_rails": false,
48
49
  "add_public_suffix": false,
49
50
  "add_rails_html_sanitizer": false,
50
51
  "add_twilio_ruby": false,
51
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/phony_rails/_.rb"
52
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/bcrypt_ruby/_.rb"
52
53
  }
53
54
  }
@@ -7,7 +7,7 @@
7
7
  "quiet": false,
8
8
  "skip": false,
9
9
  "ruby": "/Users/davidcruwys/.asdf/installs/ruby/2.7.6/bin/ruby",
10
- "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/phony_rails/_.rb",
10
+ "template": "/Users/davidcruwys/dev/kgems/rails_app_generator/after_templates/addons/bcrypt_ruby/_.rb",
11
11
  "database": "sqlite3",
12
12
  "skip_git": true,
13
13
  "skip_keeps": false,
@@ -47,6 +47,7 @@
47
47
  "add_lograge": false,
48
48
  "add_acts_as_list": false,
49
49
  "add_browser": false,
50
+ "add_bcrypt_ruby": true,
50
51
  "add_chartkick": false,
51
52
  "add_faker": false,
52
53
  "add_groupdate": false,
@@ -54,7 +55,7 @@
54
55
  "add_httparty": false,
55
56
  "add_honeybadger": false,
56
57
  "add_mini_magick": false,
57
- "add_phony_rails": true,
58
+ "add_phony_rails": false,
58
59
  "add_public_suffix": false,
59
60
  "add_rails_html_sanitizer": false,
60
61
  "add_twilio_ruby": false
@@ -7,6 +7,8 @@ module RailsAppGenerator
7
7
  class BcryptRuby < RailsAppGenerator::Addon
8
8
  required_gem gem.version('bcrypt-ruby', '3.1.5', 'bcrypt() is a sophisticated and secure hash algorithm designed by The OpenBSD project for hashing passwords.')
9
9
 
10
+ # If you are using Rails you should probably be using
11
+ # <code>ActiveModel::SecurePassword</code> instead of using bcrypt
10
12
  def apply; end
11
13
  end
12
14
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module RailsAppGenerator
4
- VERSION = '0.2.7'
4
+ VERSION = '0.2.8'
5
5
  end
data/package-lock.json CHANGED
@@ -1,12 +1,12 @@
1
1
  {
2
2
  "name": "rails_app_generator",
3
- "version": "0.2.7",
3
+ "version": "0.2.8",
4
4
  "lockfileVersion": 2,
5
5
  "requires": true,
6
6
  "packages": {
7
7
  "": {
8
8
  "name": "rails_app_generator",
9
- "version": "0.2.7",
9
+ "version": "0.2.8",
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.2.7",
3
+ "version": "0.2.8",
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": "bcrypt_ruby",
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/bcrypt_ruby/_.rb",
10
+ "add_bcrypt_ruby": true
11
+ }
12
+ }
@@ -33,6 +33,7 @@ def setup_db
33
33
  # add_scaffold('product', 'name', 'price:integer')
34
34
 
35
35
  # db_migrate
36
+ # db_seed
36
37
  end
37
38
 
38
39
  # Other template command examples
@@ -11,16 +11,11 @@
11
11
  <%- else -%>
12
12
  <%%= stylesheet_link_tag "application", "data-turbo-track": "reload" %>
13
13
  <%- end -%>
14
- <style>
15
- .alert { color: red; }
16
- .notice { color: green; }
17
- </style>
18
14
  </head>
19
15
 
20
16
  <body>
21
17
  <%%= render 'layouts/navbar' %>
22
18
  <main>
23
- <%%= render 'layouts/alerts' %>
24
19
  <%%= yield %>
25
20
  </main>
26
21
  <%%= render 'layouts/footer' %>
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.2.7
4
+ version: 0.2.8
5
5
  platform: ruby
6
6
  authors:
7
7
  - David Cruwys
@@ -189,6 +189,16 @@ files:
189
189
  - after_templates/addons/acts_as_list/app/views/todo_items/index.html.erb
190
190
  - after_templates/addons/acts_as_list/config/routes.rb
191
191
  - after_templates/addons/acts_as_list/db/seeds.rb
192
+ - after_templates/addons/bcrypt_ruby/_.rb
193
+ - after_templates/addons/bcrypt_ruby/app/controllers/home_controller.rb
194
+ - after_templates/addons/bcrypt_ruby/app/models/user.rb
195
+ - after_templates/addons/bcrypt_ruby/app/views/home/index.html.erb
196
+ - after_templates/addons/bcrypt_ruby/app/views/layouts/_footer.html.erb
197
+ - after_templates/addons/bcrypt_ruby/app/views/layouts/_navbar.html.erb
198
+ - after_templates/addons/bcrypt_ruby/app/views/layouts/application.html.erb
199
+ - after_templates/addons/bcrypt_ruby/app/views/users/_form.html.erb
200
+ - after_templates/addons/bcrypt_ruby/app/views/users/_user.html.erb
201
+ - after_templates/addons/bcrypt_ruby/db/seeds.rb
192
202
  - after_templates/addons/browser/_.rb
193
203
  - after_templates/addons/browser/app/controllers/home_controller.rb
194
204
  - after_templates/addons/browser/app/views/home/index.html.erb
@@ -541,6 +551,7 @@ files:
541
551
  - package-lock.json
542
552
  - package.json
543
553
  - profiles/addons/acts_as_list.json
554
+ - profiles/addons/bcrypt_ruby.json
544
555
  - profiles/addons/browser.json
545
556
  - profiles/addons/chartkick.json
546
557
  - profiles/addons/dotenv.json
@@ -618,7 +629,6 @@ files:
618
629
  - templates/thor_task/profile/after_template.rb
619
630
  - templates/thor_task/profile/app/controllers/home_controller.rb
620
631
  - templates/thor_task/profile/app/views/home/index.html.erb.tt
621
- - templates/thor_task/profile/app/views/layouts/_alerts.html.erb.tt
622
632
  - templates/thor_task/profile/app/views/layouts/_footer.html.erb.tt
623
633
  - templates/thor_task/profile/app/views/layouts/_navbar.html.erb
624
634
  - templates/thor_task/profile/app/views/layouts/application.html.erb.tt
@@ -1,2 +0,0 @@
1
- <% flash.each do |type, msg| %><div class="<%= type %>"><%= msg %></div><% end %>
2
- <% if flash.any? %><hr /><% end %>