owl-cli 6.69.0 → 6.70.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
|
@@ -57,8 +57,6 @@ function diffArray(a1, a2,parentKeys){
|
|
|
57
57
|
a2 = [];
|
|
58
58
|
}
|
|
59
59
|
|
|
60
|
-
|
|
61
|
-
|
|
62
60
|
var newa2 = [];
|
|
63
61
|
for(var j=0; j<a2.length; j++){
|
|
64
62
|
if(a2[j]!==null){
|
|
@@ -73,7 +71,6 @@ function diffArray(a1, a2,parentKeys){
|
|
|
73
71
|
if(!isScalar(r2)){
|
|
74
72
|
delete r2._matched;
|
|
75
73
|
}
|
|
76
|
-
|
|
77
74
|
}
|
|
78
75
|
|
|
79
76
|
for(var i=0; i<a1.length; i++){
|
|
@@ -124,11 +121,33 @@ function diffArray(a1, a2,parentKeys){
|
|
|
124
121
|
r:r2
|
|
125
122
|
});
|
|
126
123
|
}
|
|
127
|
-
|
|
128
124
|
}
|
|
129
125
|
return result;
|
|
130
126
|
}
|
|
131
127
|
|
|
128
|
+
function isArrayEqual(a1,a2){
|
|
129
|
+
if(a1==null && a2==null){
|
|
130
|
+
return true;
|
|
131
|
+
}
|
|
132
|
+
if(a1==null && a2!=null){
|
|
133
|
+
return false;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
if(a1!==null && a2===null){
|
|
137
|
+
return false;
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
if(a1.length!==a2.length){
|
|
141
|
+
return false;
|
|
142
|
+
}
|
|
143
|
+
for(var i=0; i<a1.length; i++){
|
|
144
|
+
if(a1[i]!==a2[i]){
|
|
145
|
+
return false;
|
|
146
|
+
}
|
|
147
|
+
}
|
|
148
|
+
return true;
|
|
149
|
+
}
|
|
150
|
+
|
|
132
151
|
|
|
133
152
|
|
|
134
153
|
function diff(obj1, obj2,parentKeys){
|
|
@@ -202,16 +221,16 @@ function diff(obj1, obj2,parentKeys){
|
|
|
202
221
|
else{
|
|
203
222
|
//v1 == null 或者 v1是object
|
|
204
223
|
if(v1!=null){
|
|
205
|
-
if(Array.isArray(v1)
|
|
206
|
-
var
|
|
207
|
-
|
|
208
|
-
if(ret && ret.length>0){
|
|
224
|
+
if(Array.isArray(v1)){
|
|
225
|
+
var ret = isArrayEqual(v1,v2);
|
|
226
|
+
if(!ret){
|
|
209
227
|
result.push({
|
|
210
228
|
type:'changed',
|
|
211
229
|
fieldKey : k1,
|
|
212
230
|
fieldType:'array',
|
|
213
231
|
parentKeys: JSON.stringify(parentKeys),
|
|
214
|
-
|
|
232
|
+
oldv : '' + JSON.stringify(v1),
|
|
233
|
+
newv : '' + JSON.stringify(v2)
|
|
215
234
|
});
|
|
216
235
|
}
|
|
217
236
|
}
|
|
@@ -223,7 +242,7 @@ function diff(obj1, obj2,parentKeys){
|
|
|
223
242
|
fieldKey : k1,
|
|
224
243
|
parentKeys: JSON.stringify(parentKeys),
|
|
225
244
|
oldv : '' + v1,
|
|
226
|
-
newv :
|
|
245
|
+
newv : ''
|
|
227
246
|
})
|
|
228
247
|
}
|
|
229
248
|
else{
|
|
@@ -237,19 +256,18 @@ function diff(obj1, obj2,parentKeys){
|
|
|
237
256
|
else{
|
|
238
257
|
//v1 == null;
|
|
239
258
|
if(v2!=null){
|
|
240
|
-
if(v2
|
|
259
|
+
if(v2!==''){
|
|
241
260
|
result.push({
|
|
242
261
|
type:'added',
|
|
243
262
|
fieldKey : k1,
|
|
244
263
|
parentKeys: JSON.stringify(parentKeys),
|
|
245
|
-
oldv :
|
|
246
|
-
newv : v2
|
|
264
|
+
oldv : '',
|
|
265
|
+
newv : JSON.stringify(v2)
|
|
247
266
|
})
|
|
248
267
|
}
|
|
249
268
|
|
|
250
269
|
}
|
|
251
270
|
}
|
|
252
|
-
|
|
253
271
|
}
|
|
254
272
|
}
|
|
255
273
|
|
|
@@ -265,7 +283,7 @@ function diff(obj1, obj2,parentKeys){
|
|
|
265
283
|
type:'added',
|
|
266
284
|
fieldKey : k2,
|
|
267
285
|
parentKeys: JSON.stringify(parentKeys),
|
|
268
|
-
oldv :
|
|
286
|
+
oldv : '',
|
|
269
287
|
newv : '' +v2
|
|
270
288
|
})
|
|
271
289
|
}
|
|
@@ -276,7 +294,8 @@ function diff(obj1, obj2,parentKeys){
|
|
|
276
294
|
fieldKey : k2,
|
|
277
295
|
fieldType:'array',
|
|
278
296
|
parentKeys: JSON.stringify(parentKeys),
|
|
279
|
-
diff : v2
|
|
297
|
+
// diff : v2
|
|
298
|
+
newv:JSON.stringify(v2)
|
|
280
299
|
});
|
|
281
300
|
}
|
|
282
301
|
else {
|
|
@@ -286,7 +305,7 @@ function diff(obj1, obj2,parentKeys){
|
|
|
286
305
|
fieldKey: k2,
|
|
287
306
|
parentKeys: JSON.stringify(parentKeys),
|
|
288
307
|
oldv: null,
|
|
289
|
-
newv: v2
|
|
308
|
+
newv: '' + v2
|
|
290
309
|
});
|
|
291
310
|
}
|
|
292
311
|
}
|
|
@@ -97,6 +97,23 @@ var @projectCodeService = (function (pigeon) {
|
|
|
97
97
|
}
|
|
98
98
|
return curData
|
|
99
99
|
},
|
|
100
|
+
deleteValue:function(fullkey,data){
|
|
101
|
+
var path = fullkey.split('.')
|
|
102
|
+
var curData = data
|
|
103
|
+
for (var i = 0; i < path.length-1; i++) {
|
|
104
|
+
var curKey = path[i]
|
|
105
|
+
if (typeof(curData) == 'object' && curData != null) {
|
|
106
|
+
curData = curData[curKey]
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
return null
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
if(curData){
|
|
113
|
+
let lastKey = path[path.length-1];
|
|
114
|
+
delete curData[lastKey];
|
|
115
|
+
}
|
|
116
|
+
},
|
|
100
117
|
|
|
101
118
|
setValue: function (fullkey, value, data) {
|
|
102
119
|
var path = fullkey.split('.')
|
|
@@ -362,12 +379,32 @@ var @projectCodeService = (function (pigeon) {
|
|
|
362
379
|
|
|
363
380
|
getNormalizedDoc: function (data) {
|
|
364
381
|
var obj = JSON.parse(JSON.stringify(data))
|
|
382
|
+
|
|
383
|
+
var fields = formSpecs.fields;
|
|
384
|
+
for(var i=0; i<fields.length; i++){
|
|
385
|
+
var field= fields[i];
|
|
386
|
+
if (field['_ft'] === 'subform' || field['_ft'] === 'array') {
|
|
387
|
+
var meta = field.meta;
|
|
388
|
+
if(meta.index==='no'){
|
|
389
|
+
delete obj[field.key]
|
|
390
|
+
}
|
|
391
|
+
}
|
|
392
|
+
else if (field['_ft'] === 'field') {
|
|
393
|
+
if(field.index==='no'){
|
|
394
|
+
delete obj[field.key]
|
|
395
|
+
}
|
|
396
|
+
}
|
|
397
|
+
}
|
|
365
398
|
f.tranverseFields(formSpecs, function (field, ctx) {
|
|
366
399
|
if (ctx.parentField && ctx.parentField._ft == 'array') {
|
|
367
400
|
var items = f.getValue(ctx.parentField.key, obj)
|
|
368
401
|
if (items) {
|
|
369
402
|
for (var i = 0; i < items.length; i++) {
|
|
370
403
|
var item = items[i]
|
|
404
|
+
if(field.index==='no'){
|
|
405
|
+
delete item[field.origKey]
|
|
406
|
+
continue;
|
|
407
|
+
}
|
|
371
408
|
var value = item[field.origKey]
|
|
372
409
|
value = f.normalizeValue(value, field)
|
|
373
410
|
item[field.origKey] = value
|
|
@@ -375,9 +412,15 @@ var @projectCodeService = (function (pigeon) {
|
|
|
375
412
|
}
|
|
376
413
|
}
|
|
377
414
|
else {
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
415
|
+
if(field.index==='no'){
|
|
416
|
+
f.deleteValue(field.key,obj);
|
|
417
|
+
}
|
|
418
|
+
else{
|
|
419
|
+
var value = f.getValue(field.key, obj)
|
|
420
|
+
value = f.normalizeValue(value, field)
|
|
421
|
+
f.setValue(field.key, value, obj)
|
|
422
|
+
}
|
|
423
|
+
|
|
381
424
|
}
|
|
382
425
|
}, {})
|
|
383
426
|
return obj
|