next_rails_scaffold 0.1.3 → 0.1.5

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: 6c927e1fa3e4aedbe0f200329d7940ad2762339b18a40cab4c9ab96e5d3ccf37
4
- data.tar.gz: 48aef6d4c24f14d83ac02b762e27f74f1536051daf101d2eabc23ee064d13cbb
3
+ metadata.gz: 61a007475e3652a12c1485ca409d7e3d3ac1ebe4e3bc14b77b2bd3846e70da4b
4
+ data.tar.gz: c440c329a0c6eae1568ad570dcd3bb26f80a8959a7af16d8b9dea666b877e108
5
5
  SHA512:
6
- metadata.gz: ad57f6aaddc7318aaa6d6fe1a64001475813e267207a287c2645cd0345690f512d7987801f54102b95005aa9f9b47072f170d83718e72b548ae36b02187a9be8
7
- data.tar.gz: 93bf210d3f8a2f9fa7387f1f3fc64bd3dba00aae2df3c7710ce3700145222f97e3687820011506c9e852dcf21fb3dbe55f208da4714f55ba0e18a3daa62f41ac
6
+ metadata.gz: ff1383e807e8b2587b2aaa49001d1a362bc57b774122d5e9bf83644da4f7fbaeab2b5e943a4ee51480f9e9e5149f66c25d5676c6612acdf4e3ebe359eee298ef
7
+ data.tar.gz: b894860a96dec1fdbe8792700749c9fd1a58c741d39ec4ed13a7e898011c8f59c63e618af0d894864a3f53278e1fb2798676906da70440ad578cfb62037e4cdb
@@ -1,9 +1,9 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Rails
4
- include NextRails::Actions
5
-
6
4
  class NextRailsGenerator < Rails::Generators::NamedBase
5
+ include ::NextRails::Actions
6
+
7
7
  source_root File.expand_path("templates", __dir__)
8
8
 
9
9
  NODE_REQUIRED_VERSION = ">= 18.17.0"
@@ -1,41 +1,43 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module NextRails
4
- # Make an entry in Rails routing file <tt>config/routes.rb</tt>
5
- #
6
- # route "root 'welcome#index'"
7
- # route "root 'admin#index'", namespace: :admin
8
- # route "root 'admin#index'", namespace: :admin, scope: '/api'
9
- def route(routing_code, namespace: nil, scope: nil)
10
- namespace = Array(namespace)
11
- namespace_pattern = route_namespace_pattern(namespace)
12
- routing_code = namespace.reverse.reduce(routing_code) do |code, name|
13
- "namespace :#{name} do\n#{rebase_indentation(code, 2)}end"
14
- end
4
+ module Actions
5
+ # Make an entry in Rails routing file <tt>config/routes.rb</tt>
6
+ #
7
+ # route "root 'welcome#index'"
8
+ # route "root 'admin#index'", namespace: :admin
9
+ # route "root 'admin#index'", namespace: :admin, scope: '/api'
10
+ def route(routing_code, namespace: nil, scope: nil)
11
+ namespace = Array(namespace)
12
+ namespace_pattern = route_namespace_pattern(namespace)
13
+ routing_code = namespace.reverse.reduce(routing_code) do |code, name|
14
+ "namespace :#{name} do\n#{rebase_indentation(code, 2)}end"
15
+ end
15
16
 
16
- scope = Array(scope)
17
- routing_code = scope.reverse.reduce(routing_code) do |code, name|
18
- "scope '#{name}' do\n#{rebase_indentation(code, 2)}end"
19
- end
17
+ scope = Array(scope)
18
+ routing_code = scope.reverse.reduce(routing_code) do |code, name|
19
+ "scope '#{name}' do\n#{rebase_indentation(code, 2)}end"
20
+ end
20
21
 
21
- log :route, routing_code
22
+ log :route, routing_code
22
23
 
23
- in_root do
24
- if (namespace_match = match_file("config/routes.rb", namespace_pattern))
25
- base_indent, *, existing_block_indent = namespace_match.captures.compact.map(&:length)
26
- existing_line_pattern = /^ {,#{existing_block_indent}}\S.+\n?/
27
- routing_code = rebase_indentation(routing_code, base_indent + 2).gsub(existing_line_pattern, "")
28
- namespace_pattern = /#{Regexp.escape namespace_match.to_s}/
29
- end
24
+ in_root do
25
+ if (namespace_match = match_file("config/routes.rb", namespace_pattern))
26
+ base_indent, *, existing_block_indent = namespace_match.captures.compact.map(&:length)
27
+ existing_line_pattern = /^ {,#{existing_block_indent}}\S.+\n?/
28
+ routing_code = rebase_indentation(routing_code, base_indent + 2).gsub(existing_line_pattern, "")
29
+ namespace_pattern = /#{Regexp.escape namespace_match.to_s}/
30
+ end
30
31
 
31
- inject_into_file "config/routes.rb", routing_code, after: namespace_pattern, verbose: false, force: false
32
+ inject_into_file "config/routes.rb", routing_code, after: namespace_pattern, verbose: false, force: false
32
33
 
33
- if behavior == :revoke && namespace.any? && namespace_match
34
- empty_block_pattern = /(#{namespace_pattern})((?:\s*end\n){1,#{namespace.size}})/
35
- gsub_file "config/routes.rb", empty_block_pattern, verbose: false, force: true do |matched|
36
- beginning, ending = empty_block_pattern.match(matched).captures
37
- ending.sub!(/\A\s*end\n/, "") while !ending.empty? && beginning.sub!(/^ *namespace .+ do\n\s*\z/, "")
38
- beginning + ending
34
+ if behavior == :revoke && namespace.any? && namespace_match
35
+ empty_block_pattern = /(#{namespace_pattern})((?:\s*end\n){1,#{namespace.size}})/
36
+ gsub_file "config/routes.rb", empty_block_pattern, verbose: false, force: true do |matched|
37
+ beginning, ending = empty_block_pattern.match(matched).captures
38
+ ending.sub!(/\A\s*end\n/, "") while !ending.empty? && beginning.sub!(/^ *namespace .+ do\n\s*\z/, "")
39
+ beginning + ending
40
+ end
39
41
  end
40
42
  end
41
43
  end
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module NextRails
4
- VERSION = "0.1.3"
4
+ VERSION = "0.1.5"
5
5
  end
data/lib/next_rails.rb CHANGED
@@ -1,5 +1,6 @@
1
1
  # frozen_string_literal: true
2
2
 
3
+ require_relative "next_rails/actions"
3
4
  require_relative "next_rails/version"
4
5
 
5
6
  module NextRails
@@ -7,7 +8,7 @@ module NextRails
7
8
 
8
9
  @@configured = false
9
10
 
10
- def self.configured? #:nodoc:
11
+ def self.configured? # :nodoc:
11
12
  @@configured
12
13
  end
13
14
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: next_rails_scaffold
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.3
4
+ version: 0.1.5
5
5
  platform: ruby
6
6
  authors:
7
7
  - Raphael Araújo