next_rails_scaffold 0.1.3 → 0.1.5

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: 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