@@ -11,24 +11,28 @@ export default class ValidationErrors {
1111
1212 static apply ( model : Model , payload : Array < Object > ) {
1313 let instance = new ValidationErrors ( model , payload ) ;
14- instance . apply ( ) ;
14+ let errors = instance . apply ( ) ;
1515 }
1616
1717 apply ( ) {
18+ let errorsAccumulator = { }
19+
1820 this . payload [ 'errors' ] . forEach ( ( err ) => {
1921 let meta = err [ 'meta' ] ;
2022 let metaRelationship = meta [ 'relationship' ] ;
2123
2224 if ( metaRelationship ) {
2325 this . _processRelationship ( this . model , metaRelationship ) ;
2426 } else {
25- this . _processResource ( this . model , meta ) ;
27+ this . _processResource ( errorsAccumulator , meta ) ;
2628 }
2729 } ) ;
30+
31+ this . model . errors = errorsAccumulator
2832 }
2933
30- private _processResource ( model : Model , meta : Object ) {
31- model . errors [ meta [ 'attribute' ] ] = meta [ 'message' ] ;
34+ private _processResource ( errorsAccumulator : object , meta : Object ) {
35+ errorsAccumulator [ meta [ 'attribute' ] ] = meta [ 'message' ] ;
3236 }
3337
3438 private _processRelationship ( model : Model , meta : Object ) {
@@ -38,10 +42,14 @@ export default class ValidationErrors {
3842 return ( r . id === meta [ 'id' ] || r . temp_id === meta [ 'temp-id' ] ) ;
3943 } ) ;
4044 }
45+
4146 if ( meta [ 'relationship' ] ) {
4247 this . _processRelationship ( relatedObject , meta [ 'relationship' ] ) ;
4348 } else {
44- this . _processResource ( relatedObject , meta ) ;
49+ let relatedAccumulator = { }
50+ this . _processResource ( relatedAccumulator , meta ) ;
51+ relatedObject . errors = relatedAccumulator
4552 }
53+
4654 }
4755}
0 commit comments