grape-markdown 0.0.4 → 0.0.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
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 30f403b536969e9ff19d17557900c45af9560c43
|
4
|
+
data.tar.gz: a6e79f5280fd10081e291afb34ad391de064b34f
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 845705d3464c1b22597cc19979488b546ebd7f8db9ca0228ae84da26348fbf50b2acf93dda6556294a83abea97d151e1bbb6fd3a98fbf84a9ae8f1dc5ac3daee
|
7
|
+
data.tar.gz: 365d3089e3a15d327684040cbf69b69d2ab3f51beed7e01fc7c218bd09773938853e9ffd865286ca1d1ed61a5a353ad2ff4bbcd841058faecbd12b72aec0e6fb
|
@@ -2,7 +2,7 @@ module GrapeMarkdown
|
|
2
2
|
class Parameter
|
3
3
|
attr_reader :route, :full_name, :name, :settings
|
4
4
|
|
5
|
-
delegate :
|
5
|
+
delegate :route_name, :route_namespace, to: :route
|
6
6
|
delegate :requirement, :type, :documentation, :desc, to: :settings
|
7
7
|
delegate :example, to: :documentation, allow_nil: true
|
8
8
|
|
@@ -29,7 +29,7 @@ module GrapeMarkdown
|
|
29
29
|
end
|
30
30
|
|
31
31
|
def default_options(options)
|
32
|
-
model = name.include?('_id') ? name.gsub('_id', '') : route.
|
32
|
+
model = name.include?('_id') ? name.gsub('_id', '') : route.route_name
|
33
33
|
|
34
34
|
{
|
35
35
|
required: true,
|
data/lib/grape-markdown/route.rb
CHANGED
@@ -8,6 +8,14 @@ module GrapeMarkdown
|
|
8
8
|
:route_description,
|
9
9
|
to: '__getobj__'
|
10
10
|
|
11
|
+
def root_resource
|
12
|
+
route_namespace.split('/').reject(&:empty?).first
|
13
|
+
end
|
14
|
+
|
15
|
+
def root_resource_title
|
16
|
+
root_resource.titleize
|
17
|
+
end
|
18
|
+
|
11
19
|
def route_params
|
12
20
|
@route_params ||= __getobj__.route_params.sort.map do |param|
|
13
21
|
Parameter.new(self, *param)
|
@@ -19,24 +27,30 @@ module GrapeMarkdown
|
|
19
27
|
route_path.match('\/(\w*?)[\.\/\(]').captures.first
|
20
28
|
end
|
21
29
|
|
30
|
+
def route_title
|
31
|
+
route_name.titleize
|
32
|
+
end
|
33
|
+
|
22
34
|
def route_short_description
|
23
|
-
|
35
|
+
description = <<-DESCRIPTION.gsub(/^\s*/, '').gsub(/\n/, ' ').squeeze
|
36
|
+
#{route_method.titleize} a
|
37
|
+
#{list? ? 'list of ' : ' '}
|
38
|
+
#{list? ? route_title : route_title.singularize}
|
39
|
+
DESCRIPTION
|
40
|
+
|
41
|
+
description << "on a #{root_resource_title.singularize}" if has_parent?
|
24
42
|
end
|
25
43
|
|
26
44
|
def route_path_without_format
|
27
45
|
route_path.gsub(/\((.*?)\)/, '')
|
28
46
|
end
|
29
47
|
|
30
|
-
def route_model
|
31
|
-
route_namespace.split('/').last.singularize
|
32
|
-
end
|
33
|
-
|
34
48
|
def route_type
|
35
49
|
list? ? 'collection' : 'single'
|
36
50
|
end
|
37
51
|
|
38
52
|
def list?
|
39
|
-
|
53
|
+
route_method == 'GET' && !route_path.include?(':id')
|
40
54
|
end
|
41
55
|
|
42
56
|
def route_binding
|
@@ -48,5 +62,9 @@ module GrapeMarkdown
|
|
48
62
|
def request_body?
|
49
63
|
!%w(GET DELETE).include?(route_method)
|
50
64
|
end
|
65
|
+
|
66
|
+
def has_parent?
|
67
|
+
route_name != root_resource
|
68
|
+
end
|
51
69
|
end
|
52
70
|
end
|
@@ -8,7 +8,7 @@
|
|
8
8
|
<% resource.namespaced.each do |grouped_resource| %>
|
9
9
|
<% grouped_resource.paths.each do |resource_by_path| %>
|
10
10
|
<% resource_by_path.routes.each do |route| %>
|
11
|
-
## <%= route.
|
11
|
+
## <%= route.route_short_description %>
|
12
12
|
<% end %>
|
13
13
|
<% end %>
|
14
14
|
<% end %>
|