@@ -48,10 +48,12 @@ defmodule JSONAPI.Serializer do
48
48
def encode_data ( _view , nil , _conn , _query_includes , _options ) , do: { [ ] , nil }
49
49
50
50
def encode_data ( view , data , conn , query_includes , options ) when is_list ( data ) do
51
- Enum . map_reduce ( data , [ ] , fn d , acc ->
52
- { to_include , encoded_data } = encode_data ( view , d , conn , query_includes , options )
53
- { to_include , Enum . reverse ( [ encoded_data | acc ] ) }
54
- end )
51
+ { to_include , encoded_data } =
52
+ Enum . map_reduce ( data , [ ] , fn d , acc ->
53
+ { to_include , encoded_data } = encode_data ( view , d , conn , query_includes , options )
54
+ { to_include , [ encoded_data | acc ] }
55
+ end )
56
+ { to_include , Enum . reverse ( encoded_data ) }
55
57
end
56
58
57
59
def encode_data ( view , data , conn , query_includes , options ) do
@@ -115,9 +117,10 @@ defmodule JSONAPI.Serializer do
115
117
query_includes
116
118
# credo:disable-for-next-line
117
119
|> Enum . reduce ( [ ] , fn
118
- { ^ relationship_name , value } , acc -> Enum . reverse ( [ value | acc ] )
120
+ { ^ relationship_name , value } , acc -> [ value | acc ]
119
121
_ , acc -> acc
120
122
end )
123
+ |> Enum . reverse ( )
121
124
|> List . flatten ( )
122
125
else
123
126
[ ]
@@ -126,7 +129,7 @@ defmodule JSONAPI.Serializer do
126
129
{ rel_included , encoded_rel } =
127
130
encode_data ( rel_view , rel_data , conn , rel_query_includes , options )
128
131
129
- { Enum . reverse ( [ encoded_rel | rel_included ] ) , acc }
132
+ { rel_included ++ [ encoded_rel ] , acc }
130
133
else
131
134
{ nil , acc }
132
135
end
0 commit comments