bullet_train-super_scaffolding 1.6.19 → 1.6.20
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:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 753c1abfff3d8c420ad980d7b7346429225267918becdd9c5a91682dffc8247d
|
4
|
+
data.tar.gz: 157b9e1c7747cd41d59611043ad339ab0d42ef485f1b16882648a803cec2b0df
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 5f3f9710da57086521693f17a5e9d2c5cf8f1fa55f1c2fd3b7e848c26a80ba52ed3b36d6a26ad2b0ae900efc6712896daf34a41854660917bc8140c48ef3cb99
|
7
|
+
data.tar.gz: c4e500fdb776490d8698863551aeeb6b23e0127dcda35e79bcc21bc28bc7f696502296d45ba3925e46a1bef6618385114c051703550e28e24011fd8c3655833b
|
@@ -54,17 +54,23 @@ class Scaffolding::RoutesFileManipulator
|
|
54
54
|
def find_namespaces(namespaces, within = nil)
|
55
55
|
namespaces = namespaces.dup
|
56
56
|
results = {}
|
57
|
-
|
58
|
-
|
59
|
-
|
60
|
-
|
61
|
-
|
62
|
-
|
63
|
-
|
64
|
-
|
65
|
-
|
66
|
-
|
57
|
+
reinstantiate_masamune_object
|
58
|
+
|
59
|
+
# `within` can refer to either a `resources`, `namespace`, `scope`, or `shallow` block.
|
60
|
+
blocks = @msmn.method_calls.select { |node| node.token_value.match?(/resources|namespace|scope|shallow/) }
|
61
|
+
namespace_nodes = blocks.select { |node| node.token_value.match?(/namespace/) }
|
62
|
+
|
63
|
+
if within
|
64
|
+
starting_block = blocks.find { |block| block.line_number - 1 == within }
|
65
|
+
block_range = (starting_block.location.start_line)..(starting_block.location.end_line)
|
66
|
+
namespace_nodes.select! { |node| block_range.cover?(node.line_number) }
|
67
|
+
end
|
68
|
+
|
69
|
+
namespace_nodes.each do |node|
|
70
|
+
name = node.arguments.child_nodes.first.unescaped
|
71
|
+
results[namespaces.shift] = node.line_number - 1 if namespaces.first.to_s == name
|
67
72
|
end
|
73
|
+
|
68
74
|
results
|
69
75
|
end
|
70
76
|
|
@@ -223,6 +229,7 @@ class Scaffolding::RoutesFileManipulator
|
|
223
229
|
# all other namespace blocks INSIDE the top-level namespace blocks are skipped
|
224
230
|
if namespace_line_numbers.include?(line_index)
|
225
231
|
# Grab the first symbol token on the same line as the namespace.
|
232
|
+
reinstantiate_masamune_object
|
226
233
|
namespace_name = @msmn.symbols.find { |sym| sym.line_number == line_index }.token_value
|
227
234
|
local_namespace = find_namespaces([namespace_name], within)
|
228
235
|
starting_line_number = local_namespace[namespace_name]
|
@@ -418,4 +425,8 @@ class Scaffolding::RoutesFileManipulator
|
|
418
425
|
lines[line_number].gsub!(/resources :(.*)$/, "resources :\\1, concerns: [#{existing_concerns.map { |e| ":#{e}" }.join(", ")}]")
|
419
426
|
end
|
420
427
|
end
|
428
|
+
|
429
|
+
def reinstantiate_masamune_object
|
430
|
+
@msmn = Masamune::AbstractSyntaxTree.new(lines.join)
|
431
|
+
end
|
421
432
|
end
|
metadata
CHANGED
@@ -1,14 +1,14 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: bullet_train-super_scaffolding
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.6.
|
4
|
+
version: 1.6.20
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Andrew Culver
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2023-11-
|
11
|
+
date: 2023-11-29 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: standard
|