rails_app_generator 0.1.9 → 0.1.10
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 +4 -4
- data/CHANGELOG.md +8 -0
- data/lib/rails_app_generator/app_generator.rb +0 -2
- data/lib/rails_app_generator/version.rb +1 -1
- data/package-lock.json +2 -2
- data/package.json +1 -1
- data/tasks/addon.thor +1 -1
- data/tasks/gem_info.rb +47 -0
- data/tasks/profile.thor +29 -2
- data/templates/thor_task/profile/after_template.tt +15 -0
- metadata +3 -1
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 6ec3cdb2cbf9342e0d11d2564095d01beec1cdf4578c2b935463f1d1948d05c6
|
4
|
+
data.tar.gz: 2070fd5c3e20f44048a8866de460369f151b4426c3623c28fd4aae87e3438823
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 2881fdb69ec894026ecd7c0fb4bfffbb70c00fa1388d74f8ae8f913d560f878d6a54b9f1d8d987c4b30a1883c16cee35ce822e0b8505759301ee2f6458a30951
|
7
|
+
data.tar.gz: c9b77351ad707f91a9d214e33f9fad4691aba37e6f1e66846c627521f7e92bb7bd27eb66b5f5772c4fa470dfb31fc8773ef3338b9cd41940a63595fd84af4fa6
|
data/CHANGELOG.md
CHANGED
@@ -1,3 +1,11 @@
|
|
1
|
+
## [0.1.9](https://github.com/klueless-io/rails_app_generator/compare/v0.1.8...v0.1.9) (2022-08-02)
|
2
|
+
|
3
|
+
|
4
|
+
### Bug Fixes
|
5
|
+
|
6
|
+
* add thor task to create add-ons, plus profile rails-html-santaizer ([098700f](https://github.com/klueless-io/rails_app_generator/commit/098700facf9eb7d74ce6dfed8495e22d0904a386))
|
7
|
+
* cops ([61f106e](https://github.com/klueless-io/rails_app_generator/commit/61f106e8d5bfa918731430efd5c6fea34d25a41b))
|
8
|
+
|
1
9
|
## [0.1.8](https://github.com/klueless-io/rails_app_generator/compare/v0.1.7...v0.1.8) (2022-07-31)
|
2
10
|
|
3
11
|
|
@@ -69,8 +69,6 @@ module RailsAppGenerator
|
|
69
69
|
# webmock 3.13.0 3.14.0 = 3.13.0 development, test
|
70
70
|
# websocket-driver 0.6.5 0.7.5
|
71
71
|
|
72
|
-
# gem "rails-html-sanitizer", "1.3.0"
|
73
|
-
# gem "unicorn", "5.3.0"
|
74
72
|
# gem "honeybadger", "4.6.0"
|
75
73
|
# gem "pg", "0.20.0"
|
76
74
|
# gem "redis", "3.3.3"
|
data/package-lock.json
CHANGED
@@ -1,12 +1,12 @@
|
|
1
1
|
{
|
2
2
|
"name": "rails_app_generator",
|
3
|
-
"version": "0.1.
|
3
|
+
"version": "0.1.10",
|
4
4
|
"lockfileVersion": 2,
|
5
5
|
"requires": true,
|
6
6
|
"packages": {
|
7
7
|
"": {
|
8
8
|
"name": "rails_app_generator",
|
9
|
-
"version": "0.1.
|
9
|
+
"version": "0.1.10",
|
10
10
|
"dependencies": {
|
11
11
|
"daisyui": "^2.20.0"
|
12
12
|
},
|
data/package.json
CHANGED
data/tasks/addon.thor
CHANGED
data/tasks/gem_info.rb
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Retrieve GemInfo from RubyGems.org
|
4
|
+
class GemInfo
|
5
|
+
attr_reader :name
|
6
|
+
attr_reader :version
|
7
|
+
attr_reader :description
|
8
|
+
|
9
|
+
def initialize(name, version, description)
|
10
|
+
@name = name
|
11
|
+
@version = version
|
12
|
+
@description = description
|
13
|
+
end
|
14
|
+
|
15
|
+
def debug
|
16
|
+
puts "name: #{name}"
|
17
|
+
puts "version: #{version}"
|
18
|
+
puts "description: #{description}"
|
19
|
+
end
|
20
|
+
|
21
|
+
class << self
|
22
|
+
def get(name)
|
23
|
+
gem_info = query_ruby_gems(name)
|
24
|
+
|
25
|
+
return gem_info if gem_info
|
26
|
+
|
27
|
+
return query_ruby_gems(name.gsub('_', '-')) if name.include?('_')
|
28
|
+
return query_ruby_gems(name.gsub('-', '_')) if name.include?('-')
|
29
|
+
|
30
|
+
abort "Cannot find GEM (#{name}) on RubyGems.org"
|
31
|
+
end
|
32
|
+
|
33
|
+
private
|
34
|
+
|
35
|
+
def query_ruby_gems(name)
|
36
|
+
link = "https://rubygems.org/api/v1/gems/#{name.downcase}.json"
|
37
|
+
info = Net::HTTP.get(URI.parse(link))
|
38
|
+
json = JSON.parse(info)
|
39
|
+
|
40
|
+
new(json['name'], json['version'], json['info'])
|
41
|
+
rescue SocketError
|
42
|
+
abort 'Internet connection cannot be established to RubyGems.org'
|
43
|
+
rescue JSON::ParserError
|
44
|
+
nil
|
45
|
+
end
|
46
|
+
end
|
47
|
+
end
|
data/tasks/profile.thor
CHANGED
@@ -2,11 +2,38 @@
|
|
2
2
|
|
3
3
|
# https://codecrate.com/2014/01/replace-rake-with-thor.html
|
4
4
|
|
5
|
+
require 'pry'
|
5
6
|
# Thor task to create a new Profile for Rails App Generator
|
6
7
|
class Profile < Thor
|
8
|
+
include Thor::Actions
|
9
|
+
|
10
|
+
source_root(File.expand_path('../templates/thor_task', File.dirname(__FILE__)))
|
11
|
+
|
12
|
+
attr_accessor :name
|
13
|
+
|
7
14
|
desc 'new', 'Create a new Profile for testing Rails App Generator settings'
|
15
|
+
method_option :variant, type: :string, default: 'default', desc: 'Profile variant to create, valid values are (default, addon)'
|
16
|
+
method_option :gem, type: :string, default: nil, desc: 'Gem name is looked up to find version and description'
|
17
|
+
method_option :force, type: :boolean, default: false, desc: 'Overwrite existing files'
|
8
18
|
def new(name)
|
9
|
-
|
10
|
-
|
19
|
+
self.name = name
|
20
|
+
|
21
|
+
say "Creating profile #{name}"
|
22
|
+
puts "Variant: #{options[:variant]}"
|
23
|
+
|
24
|
+
gi = gem_info
|
25
|
+
gi&.debug
|
26
|
+
|
27
|
+
# template('profile/profile', "lib/rails_app_generator/profiles/#{name}.rb", force: options[:force])
|
28
|
+
end
|
29
|
+
|
30
|
+
no_commands do
|
31
|
+
def gem_info
|
32
|
+
return nil unless options[:gem]
|
33
|
+
|
34
|
+
gem_name = options[:gem] == 'gem' ? name : options[:gem]
|
35
|
+
|
36
|
+
GemInfo.create(gem_name)
|
37
|
+
end
|
11
38
|
end
|
12
39
|
end
|
@@ -0,0 +1,15 @@
|
|
1
|
+
# frozen_string_literal: true
|
2
|
+
|
3
|
+
# Description goes here
|
4
|
+
require 'pry'
|
5
|
+
|
6
|
+
self.local_template_path = local_template_base(__FILE__)
|
7
|
+
|
8
|
+
gac 'base rails 7 image created'
|
9
|
+
|
10
|
+
add_controller('home', 'index')
|
11
|
+
route("root 'home#index'")
|
12
|
+
|
13
|
+
force_copy
|
14
|
+
|
15
|
+
copy_file 'index.html.erb', 'app/views/home/index.html.erb'
|
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.
|
4
|
+
version: 0.1.10
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- David Cruwys
|
@@ -355,6 +355,7 @@ files:
|
|
355
355
|
- profiles/rag-tailwind.json
|
356
356
|
- sig/rails_app_generator.rbs
|
357
357
|
- tasks/addon.thor
|
358
|
+
- tasks/gem_info.rb
|
358
359
|
- tasks/profile.thor
|
359
360
|
- templates/Gemfile-original-r7
|
360
361
|
- templates/Gemfile-original-schienenzeppelin.erb
|
@@ -412,6 +413,7 @@ files:
|
|
412
413
|
- templates/app_x/views/shared/_navbar.html.erb.tt
|
413
414
|
- templates/app_x/workers/application_worker.rb
|
414
415
|
- templates/thor_task/addon/addon.tt
|
416
|
+
- templates/thor_task/profile/after_template.tt
|
415
417
|
homepage: http://appydave.com/gems/rails_app_generator
|
416
418
|
licenses:
|
417
419
|
- MIT
|