decord/source/145_defaultDiffer.js
2026-07-20 16:05:17 +00:00

518 lines
14 KiB
JavaScript

// Module ID: 145
// Function ID: 2345
// Name: defaultDiffer
// Dependencies: []
// Module 145 (defaultDiffer)
function defaultDiffer(arg0, arg1) {
let tmp = "object" !== typeof arg1;
if (!tmp) {
tmp = null === arg1;
}
if (!tmp) {
tmp = arg2(arg6[0])(arg0, arg1, closure_5);
}
return tmp;
}
function restoreDeletedValuesInNestedArray(arg0, arg1, arg2) {
if (Array.isArray(arg1)) {
let diff = tmp11 - 1;
if (+arg1.length) {
if (closure_4 > 0) {
restoreDeletedValuesInNestedArray(arg0, arg1[diff], arg2);
diff = tmp16 - 1;
while (+diff) {
let tmp17 = closure_4;
if (closure_4 <= 0) {
break;
}
}
}
}
} else if (arg1) {
if (closure_4 > 0) {
for (const key10009 in closure_3) {
let tmp19 = key10009;
let tmp20 = closure_3;
if (!closure_3[key10009]) {
continue;
} else {
let tmp2 = arg1[key10009];
let tmp3 = tmp2;
if (undefined === tmp2) {
continue;
} else {
let obj = arg2[key10009];
let tmp4 = tmp2;
let tmp5 = obj;
if (!obj) {
continue;
} else {
if ("function" === typeof tmp2) {
tmp2 = true;
}
if (undefined === tmp2) {
tmp2 = null;
}
if ("object" !== typeof obj) {
arg0[key10009] = tmp2;
} else if ("function" === typeof obj.diff) {
let processResult = tmp2;
if ("function" === typeof obj.process) {
processResult = obj.process(tmp2);
}
arg0[key10009] = processResult;
}
let tmp7 = closure_3;
closure_3[key10009] = false;
let tmp8 = closure_4;
closure_4 = closure_4 - 1;
let tmp9 = tmp2;
let tmp10 = obj;
// continue
}
continue;
}
continue;
}
continue;
}
}
}
}
function diffNestedProperty(arg0, arg1, arg2, arg3) {
let length;
let tmp = arg0;
let arr = arg1;
if (!arg0) {
if (arr === arg2) {
return tmp;
}
}
if (!arr) {
if (arg2) {
let tmp3 = addNestedProperty(tmp, arg2, arg3);
} else {
tmp3 = tmp;
if (arr) {
tmp3 = clearNestedProperty(tmp, arr, arg3);
}
}
}
if (!Array.isArray(arr)) {
const _Array = Array;
if (!Array.isArray(arg2)) {
diffProperties(tmp, arr, arg2, arg3);
}
}
if (!Array.isArray(arr)) {
const _Array3 = Array;
const isArray = Array.isArray(arr);
const tmp15 = arg2(arg6[1]);
if (isArray) {
let tmp12Result = tmp12(tmp, tmp15(arr), arg2, arg3);
} else {
tmp12Result = tmp12(tmp, arr, tmp15(arg2), arg3);
}
} else {
const _Array2 = Array;
}
const tmp23 = arr.length < arg2.length ? arr.length : arg2.length;
let num2 = 0;
let tmp24 = tmp;
let num3 = 0;
let tmp25 = tmp;
if (0 < tmp23) {
do {
let tmp26 = closure_8;
let tmp27 = tmp24;
let tmp28 = arg3;
tmp24 = closure_8(tmp24, arr[num3], arg2[num3], arg3);
num3 = num3 + 1;
tmp25 = tmp24;
num2 = num3;
} while (num3 < tmp23);
}
let tmp29 = tmp25;
let sum = num2;
let tmp31 = tmp25;
let sum1 = num2;
if (num2 < arr.length) {
do {
let tmp33 = closure_9;
tmp29 = closure_9(tmp29, arr[sum], arg3);
sum = sum + 1;
tmp31 = tmp29;
sum1 = sum;
length = arr.length;
} while (sum < length);
}
let tmp34 = tmp31;
tmp = tmp31;
if (sum1 < arg2.length) {
do {
arr = arg2[sum1];
let tmp35 = tmp34;
if (arr) {
let tmp36 = closure_11;
tmp35 = closure_11(tmp34, arr, arg3);
}
sum1 = sum1 + 1;
tmp34 = tmp35;
tmp = tmp35;
} while (sum1 < arg2.length);
}
tmp12Result = tmp;
}
function clearNestedProperty(arg0, arg1, arg2) {
let length;
if (arg1) {
const _Array = Array;
if (Array.isArray(arg1)) {
let num = 0;
let tmp7 = arg0;
let tmp8 = arg0;
if (0 < arg1.length) {
do {
let tmp9 = closure_9;
tmp7 = closure_9(tmp7, arg1[num], arg2);
num = num + 1;
tmp8 = tmp7;
length = arg1.length;
} while (num < length);
}
return tmp8;
} else {
return diffProperties(arg0, arg1, closure_2, arg2);
}
} else {
return arg0;
}
}
function diffProperties(arg0, arg1, arg2, arg3) {
let tmp3;
let tmp4;
let tmp2 = arg0;
let tmp5 = arg0;
const keys = Object.keys();
if (keys !== undefined) {
let tmp6 = tmp3;
tmp5 = tmp2;
let tmp7 = tmp4;
while (keys[tmp] !== undefined) {
let tmp64 = tmp10;
let obj4 = arg3[tmp10];
tmp3 = obj4;
if (!obj4) {
continue;
} else {
let flag = arg1[tmp10];
let tmp11 = arg2[tmp10];
let tmp12 = tmp11;
let tmp13 = flag;
if ("function" === typeof tmp11) {
let tmp14 = "object" === typeof obj4 && "function" === typeof obj4.process;
tmp12 = tmp11;
tmp13 = flag;
if (!tmp14) {
if ("function" === typeof flag) {
flag = true;
}
tmp13 = flag;
tmp12 = true;
}
}
let tmp15 = tmp13;
if (undefined === tmp12) {
let tmp16 = tmp13;
if (undefined === tmp13) {
tmp16 = null;
}
tmp15 = tmp16;
tmp12 = null;
}
let tmp17 = closure_3;
if (closure_3) {
let tmp18 = closure_3;
closure_3[tmp10] = false;
}
if (tmp9) {
if (undefined !== tmp9[tmp10]) {
if ("object" !== typeof obj4) {
tmp9[tmp10] = tmp12;
tmp2 = tmp9;
tmp3 = obj4;
let tmp44 = tmp12;
tmp4 = tmp15;
// continue
} else {
if ("function" === typeof obj4.diff) {
let processResult = tmp12;
if ("function" === typeof obj4.process) {
processResult = obj4.process(tmp12);
}
tmp9[tmp10] = processResult;
tmp2 = tmp9;
tmp3 = obj4;
let tmp43 = tmp12;
tmp4 = tmp15;
// continue
} else {
tmp2 = tmp9;
tmp3 = obj4;
let tmp41 = tmp12;
tmp4 = tmp15;
}
continue;
}
continue;
}
}
tmp2 = tmp9;
tmp3 = obj4;
let tmp19 = tmp12;
tmp4 = tmp15;
if (tmp15 === tmp12) {
continue;
} else {
if ("object" !== typeof obj4) {
let tmp38 = defaultDiffer;
tmp2 = tmp9;
tmp3 = obj4;
let tmp39 = tmp12;
tmp4 = tmp15;
if (!defaultDiffer(tmp15, tmp12)) {
continue;
} else {
let obj = tmp9;
tmp2 = tmp9;
if (!tmp9) {
obj = {};
tmp2 = obj;
}
obj[tmp10] = tmp12;
tmp3 = obj4;
let tmp40 = tmp12;
tmp4 = tmp15;
// continue
}
continue;
} else {
if ("function" !== typeof obj4.diff) {
if ("function" !== typeof obj4.process) {
closure_3 = null;
let closure_4 = 0;
let tmp20 = diffNestedProperty;
let tmp21 = tmp9;
let tmp22 = tmp15;
let tmp23 = tmp12;
let tmp24 = obj4;
let tmp25 = diffNestedProperty(tmp9, tmp15, tmp12, obj4);
let tmp26 = closure_4;
let tmp27 = closure_4 > 0 && tmp25;
tmp2 = tmp25;
tmp3 = obj4;
let tmp28 = tmp12;
tmp4 = tmp15;
if (!tmp27) {
continue;
} else {
let tmp29 = restoreDeletedValuesInNestedArray;
let tmp30 = restoreDeletedValuesInNestedArray(tmp25, tmp12, obj4);
closure_3 = null;
tmp2 = tmp25;
tmp3 = obj4;
let tmp31 = tmp12;
tmp4 = tmp15;
// continue
}
continue;
}
continue;
}
if (undefined === tmp15) {
let processResult1 = tmp12;
if ("function" === typeof obj4.process) {
processResult1 = obj4.process(tmp12);
}
obj = tmp9;
tmp2 = tmp9;
if (!tmp9) {
obj = {};
tmp2 = obj;
}
obj[tmp10] = processResult1;
tmp3 = obj4;
let tmp36 = tmp12;
tmp4 = tmp15;
let tmp37 = processResult1;
// continue
} else {
if ("function" === typeof obj4.diff) {
let diffResult = obj4.diff(tmp15, tmp12);
} else {
let tmp32 = defaultDiffer;
diffResult = defaultDiffer(tmp15, tmp12);
}
tmp2 = tmp9;
tmp3 = obj4;
let tmp34 = tmp12;
tmp4 = tmp15;
}
continue;
}
continue;
}
continue;
}
continue;
}
}
let tmp45 = tmp5;
let tmp46 = tmp5;
const keys1 = Object.keys();
if (keys1 !== undefined) {
let tmp49 = tmp7;
tmp46 = tmp45;
while (keys1[tmp3] !== undefined) {
let tmp65 = tmp50;
let tmp51 = undefined === arg2[tmp50];
if (tmp51) {
tmp6 = arg3[tmp50];
}
let tmp52 = tmp6;
tmp7 = tmp49;
if (!tmp51) {
continue;
} else {
let tmp53 = tmp48;
if (tmp48) {
tmp53 = undefined !== tmp48[tmp50];
}
tmp45 = tmp48;
if (!tmp53) {
let tmp54 = arg1[tmp50];
let tmp55 = tmp48;
if (undefined === tmp54) {
tmp45 = tmp48;
tmp49 = tmp54;
} else {
if ("object" === typeof tmp52) {
if ("function" !== typeof tmp52.diff) {
if ("function" !== typeof tmp52.process) {
let tmp56 = clearNestedProperty;
let tmp57 = clearNestedProperty(tmp48, tmp54, tmp52);
}
let tmp63 = tmp57;
}
}
obj = tmp48;
let tmp58 = tmp48;
if (!tmp48) {
obj = {};
tmp58 = obj;
}
obj[tmp50] = null;
let tmp59 = closure_3;
if (!closure_3) {
closure_3 = {};
}
let tmp60 = closure_3;
tmp57 = tmp58;
if (!closure_3[tmp50]) {
let tmp61 = closure_3;
closure_3[tmp50] = true;
let tmp62 = closure_4;
closure_4 = closure_4 + 1;
tmp57 = tmp58;
}
}
}
tmp7 = tmp49;
tmp6 = tmp52;
// continue
}
continue;
}
}
return tmp46;
}
function addNestedProperty(arg0, arg1, arg2) {
let length;
if (Array.isArray(arg1)) {
let num = 0;
let tmp12 = arg0;
let tmp13 = arg0;
if (0 < arg1.length) {
do {
let tmp14 = closure_11;
tmp12 = closure_11(tmp12, arg1[num], arg2);
num = num + 1;
tmp13 = tmp12;
length = arg1.length;
} while (num < length);
}
return tmp13;
} else {
let obj = arg0;
let tmp4 = arg0;
const keys = Object.keys();
if (keys !== undefined) {
tmp4 = obj;
while (keys[tmp] !== undefined) {
let tmp15 = tmp7;
let tmp16 = arg1[tmp7];
let obj2 = arg2[tmp7];
if (null == obj2) {
continue;
} else {
if (undefined === tmp16) {
obj = tmp6;
if (!tmp6) {
continue;
} else {
obj = tmp6;
let processResult = null;
}
continue;
} else if ("object" === typeof obj2) {
if ("function" === typeof obj2.process) {
processResult = obj2.process(tmp16);
} else if ("function" === typeof obj2.diff) {
processResult = tmp16;
}
} else {
processResult = "function" === typeof tmp16 || tmp16;
}
if (undefined === processResult) {
let tmp10 = addNestedProperty;
obj = addNestedProperty(tmp6, tmp16, obj2);
let tmp11 = processResult;
// continue
} else {
obj = tmp6;
if (!tmp6) {
obj = {};
}
obj[tmp7] = processResult;
let tmp9 = processResult;
// continue
}
continue;
}
continue;
}
}
return tmp4;
}
}
let closure_2 = {};
let closure_3 = null;
let closure_4 = 0;
let closure_5 = { unsafelyIgnoreFunctions: true };
arg5.create = function create(arg0, arg1) {
return addNestedProperty(null, arg0, arg1);
};
arg5.diff = function diff(arg0, arg1, arg2) {
return diffProperties(null, arg0, arg1, arg2);
};