File tree Expand file tree Collapse file tree 1 file changed +24
-7
lines changed Expand file tree Collapse file tree 1 file changed +24
-7
lines changed Original file line number Diff line number Diff line change @@ -197,16 +197,33 @@ export default {
197
197
return Service
198
198
. post ( context , path , queryParams )
199
199
. then ( ( item ) => {
200
- const data = { } ;
201
200
const validationResults = new ValidationResults ( ) ;
202
201
203
- item . property . forEach ( ( property ) => {
204
- try {
205
- data [ property . name ] = JSON . parse ( property . value ) ;
206
- } catch ( e ) {
207
- data [ property . name ] = property . value ;
202
+ const parse = ( source , data = { } ) => {
203
+ let handler = data ;
204
+ const { name, property : properties , list } = source ;
205
+
206
+ if ( name ) {
207
+ if ( ! handler [ name ] ) {
208
+ handler [ name ] = { } ;
209
+ }
210
+ handler = handler [ name ] ;
211
+ }
212
+
213
+ properties . forEach ( ( property ) => {
214
+ handler [ property . name ] = property . value ;
215
+ } ) ;
216
+
217
+ if ( list ) {
218
+ list . forEach ( ( listItem ) => {
219
+ parse ( listItem , handler ) ;
220
+ } ) ;
208
221
}
209
- } ) ;
222
+
223
+ return handler ;
224
+ } ;
225
+
226
+ const data = parse ( item ) ;
210
227
211
228
validationResults
212
229
. setProductModuleValidation ( data . productModuleNumber , data )
You can’t perform that action at this time.
0 commit comments