3
3
module GrapeSwagger
4
4
module Representable
5
5
class Parser
6
- attr_reader :model
7
- attr_reader :endpoint
6
+ attr_reader :model , :endpoint
8
7
9
8
def initialize ( model , endpoint )
10
9
@model = model
@@ -61,7 +60,9 @@ def parse_representer_property(property)
61
60
end
62
61
end
63
62
64
- def representer_mapping ( representer , documentation , property , is_a_collection = false , is_a_decorator = false , nested = nil )
63
+ def representer_mapping (
64
+ representer , documentation , property , is_a_collection = false , is_a_decorator = false , nested = nil
65
+ )
65
66
if nested . nil? && is_a_decorator
66
67
name = endpoint . send ( :expose_params_from_model , representer )
67
68
@@ -105,7 +106,9 @@ def parse_representer(representer)
105
106
properties = representer . map . each_with_object ( { } ) do |value , property |
106
107
property_name = value [ :as ] . try ( :call ) || value . name
107
108
hidden_property = value [ :documentation ] &.[]( :hidden )
109
+
108
110
next if hidden_property && ( hidden_property . is_a? ( Proc ) ? hidden_property . call : hidden_property )
111
+
109
112
property [ property_name ] = parse_representer_property ( value )
110
113
end
111
114
@@ -125,15 +128,17 @@ def combine(representer, nested)
125
128
126
129
overrided = ( attributes . keys & nested_attributes . keys )
127
130
128
- final_required = ( required + nested_required )
129
- . uniq
130
- . select { |k | ( overrided . include? ( k ) && nested_required . include? ( k ) ) || !overrided . include? ( k ) }
131
+ final_required =
132
+ ( required + nested_required )
133
+ . uniq
134
+ . select { |k | ( overrided . include? ( k ) && nested_required . include? ( k ) ) || !overrided . include? ( k ) }
131
135
132
136
[ final_attributes , final_required ]
133
137
end
134
138
135
139
def with_required ( hash , required )
136
140
return hash if required . empty?
141
+
137
142
hash [ :required ] = required
138
143
hash
139
144
end
0 commit comments