decord/source/1301_ReflectionJsonReader.js
2026-07-24 07:16:23 +00:00

532 lines
22 KiB
JavaScript

// Module ID: 1301
// Function ID: 15205
// Name: ReflectionJsonReader
// Dependencies: [57, 6, 7, 1285, 1297, 1293, 1302, 1291, 1286]
// Module 1301 (ReflectionJsonReader)
import _slicedToArray from "_slicedToArray";
import _classCallCheck from "reflectionLongConvert";
import _defineProperties from "_callSuper";
export const ReflectionJsonReader = (() => {
class ReflectionJsonReader {
constructor(arg0) {
tmp = outer1_3(this, ReflectionJsonReader);
this.info = arg0;
return;
}
}
let obj = {
key: "prepare",
value: function prepare() {
const self = this;
if (undefined === this.fMap) {
self.fMap = {};
let fields = self.info.fields;
if (null === fields) {
fields = [];
}
for (const item10009 of fields) {
self.fMap[item10009.name] = item10009;
self.fMap[item10009.jsonName] = item10009;
self.fMap[item10009.localName] = item10009;
continue;
}
}
}
};
let items = [obj, , , , ];
obj = {
key: "assert",
value: function assert(arg0, arg1, prepareResult) {
if (!arg0) {
const typeofJsonValueResult = ReflectionJsonReader(outer1_1[3]).typeofJsonValue(prepareResult);
let str = "number";
let tmp4 = "number" != typeofJsonValueResult;
if (tmp4) {
tmp4 = "boolean" != typeofJsonValueResult;
}
str = typeofJsonValueResult;
if (!tmp4) {
str = prepareResult.toString();
}
const _Error = Error;
const self = this;
const _HermesInternal = HermesInternal;
const error = new Error("Cannot parse JSON " + str + " for " + this.info.typeName + "#" + arg1);
throw error;
}
}
};
items[1] = obj;
obj = {
key: "read",
value: function read(arg0, arg1, ignoreUnknownFields) {
let tmp95;
let tmp97;
const self = this;
let prepareResult = this.prepare();
const items = [];
const entries = Object.entries(arg0);
while (tmp3 !== undefined) {
let tmp93 = outer1_2;
let tmp94 = outer1_2(tmp4, 2);
[tmp95, tmp97] = tmp94;
let tmp98 = self.fMap[tmp95];
let obj5 = tmp98;
if (tmp98) {
let tmp11 = tmp98;
let localName = obj5.localName;
if (obj5.oneof) {
let tmp13 = items;
let tmp14 = tmp98;
if (items.includes(obj5.oneof)) {
let _Error2 = Error;
let _HermesInternal2 = HermesInternal;
let str4 = "Multiple members of the oneof group \"";
let str5 = "\" of ";
let str6 = " are present in JSON.";
let tmp89 = new.target;
let tmp90 = new.target;
let error = new Error("Multiple members of the oneof group \"" + tmp98.oneof + "\" of " + self.info.typeName + " are present in JSON.");
let tmp92 = error;
throw error;
} else {
let tmp15 = items;
let tmp16 = tmp98;
let arr = items.push(obj5.oneof);
let tmp18 = arg1;
let obj = {};
let tmp19 = localName;
obj.oneofKind = localName;
arg1[obj5.oneof] = obj;
let tmp12 = obj;
}
} else {
tmp12 = arg1;
}
let tmp20 = tmp98;
if ("map" == obj5.kind) {
let tmp56 = tmp97;
if (null === tmp97) {
continue;
} else {
prepareResult = ReflectionJsonReader;
prepareResult = outer1_1;
let obj6 = ReflectionJsonReader(outer1_1[3]);
prepareResult = tmp97;
prepareResult = tmp98;
prepareResult = self.assert(obj6.isJsonObject(tmp97), obj5.name, tmp97);
prepareResult = tmp12;
prepareResult = localName;
prepareResult = tmp12[localName];
let _Object = Object;
prepareResult = Object.entries(tmp97);
for (const item10154 of prepareResult) {
prepareResult = outer1_2;
prepareResult = outer1_2(item10154, 2);
prepareResult = prepareResult[1];
prepareResult = tmp98;
prepareResult = self.assert(null !== prepareResult, obj5.name + " map value", null);
let internalJsonReadResult;
let kind3 = obj5.V.kind;
if ("message" === kind3) {
let tmp63 = tmp98;
let V2 = obj5.V;
let TResult = V2.T();
let tmp64 = prepareResult;
let tmp65 = arg2;
internalJsonReadResult = TResult.internalJsonRead(prepareResult, arg2);
} else if ("enum" === kind3) {
let tmp57 = tmp98;
let V = obj5.V;
let tmp58 = prepareResult;
let tmp59 = arg2;
let tmp60 = self;
let enumResult = self.enum(V.T(), prepareResult, obj5.name, arg2.ignoreUnknownFields);
internalJsonReadResult = enumResult;
continue;
} else if ("scalar" === kind3) {
prepareResult = tmp98;
prepareResult = self;
internalJsonReadResult = self.scalar(prepareResult, obj5.V.T, obj5.V.L, obj5.name);
}
let tmp66 = internalJsonReadResult;
let tmp67 = tmp98;
let tmp68 = prepareResult;
let assertResult = self.assert(undefined !== internalJsonReadResult, obj5.name + " map value", prepareResult);
let first = prepareResult[0];
let tmp71 = ReflectionJsonReader;
let tmp72 = outer1_1;
if (obj5.K == ReflectionJsonReader(outer1_1[4]).ScalarType.BOOL) {
let tmp73 = first;
let tmp74 = "true" == first;
let tmp75 = tmp74;
if (!tmp74) {
let tmp76 = first;
let tmp77 = "false" != first;
let tmp78 = tmp77;
if (tmp77) {
tmp78 = first;
}
tmp75 = tmp78;
}
first = tmp75;
}
let tmp79 = prepareResult;
let tmp80 = first;
let tmp81 = tmp98;
let tmp82 = ReflectionJsonReader;
let tmp83 = outer1_1;
let tmp84 = self;
let tmp85 = first;
let str3 = self.scalar(first, obj5.K, ReflectionJsonReader(outer1_1[4]).LongType.STRING, obj5.name);
let str = str3.toString();
let tmp87 = str;
let tmp88 = internalJsonReadResult;
prepareResult[str] = internalJsonReadResult;
continue;
}
}
} else {
let tmp99 = tmp98;
if (obj5.repeat) {
let tmp40 = tmp97;
if (null === tmp97) {
continue;
} else {
let _Array = Array;
prepareResult = tmp97;
prepareResult = tmp98;
prepareResult = self.assert(Array.isArray(tmp97), obj5.name, tmp97);
prepareResult = tmp12;
prepareResult = localName;
let arr2 = tmp12[localName];
prepareResult = tmp97;
for (const item10123 of tmp97) {
prepareResult = item10123;
prepareResult = tmp98;
prepareResult = self.assert(null !== item10123, obj5.name, null);
let internalJsonReadResult1;
let kind2 = obj5.kind;
if ("message" === kind2) {
let tmp47 = tmp98;
let TResult1 = obj5.T();
let tmp48 = item10123;
let tmp49 = arg2;
internalJsonReadResult1 = TResult1.internalJsonRead(prepareResult, arg2);
} else if ("enum" === kind2) {
let tmp41 = tmp98;
let tmp42 = item10123;
let tmp43 = arg2;
let tmp44 = self;
let enumResult1 = self.enum(obj5.T(), prepareResult, obj5.name, arg2.ignoreUnknownFields);
internalJsonReadResult1 = enumResult1;
continue;
} else if ("scalar" === kind2) {
prepareResult = item10123;
prepareResult = tmp98;
prepareResult = self;
internalJsonReadResult1 = self.scalar(prepareResult, obj5.T, obj5.L, obj5.name);
}
let tmp50 = internalJsonReadResult1;
let tmp51 = tmp98;
let tmp52 = tmp97;
let assertResult1 = self.assert(undefined !== internalJsonReadResult1, obj5.name, tmp97);
let tmp54 = arr2;
arr = arr2.push(internalJsonReadResult1);
continue;
}
}
} else {
let tmp21 = tmp98;
let kind = obj5.kind;
if ("message" === kind) {
let tmp31 = tmp97;
if (null === tmp97) {
let tmp32 = tmp98;
if ("google.protobuf.Value" != obj5.T().typeName) {
let tmp38 = tmp98;
let assertResult2 = self.assert(undefined === obj5.oneof, `${obj5.name} (oneof member)`, null);
continue;
}
}
let tmp33 = tmp12;
let tmp34 = localName;
let tmp35 = tmp98;
let TResult2 = obj5.T();
let tmp36 = tmp97;
let tmp37 = ignoreUnknownFields;
tmp12[localName] = TResult2.internalJsonRead(tmp97, ignoreUnknownFields, tmp12[localName]);
} else if ("enum" === kind) {
let tmp22 = tmp98;
let tmp23 = tmp97;
let tmp24 = ignoreUnknownFields;
let tmp25 = self;
let enumResult2 = self.enum(obj5.T(), tmp97, obj5.name, ignoreUnknownFields.ignoreUnknownFields);
if (false === enumResult2) {
continue;
} else {
let tmp28 = tmp12;
let tmp29 = localName;
let tmp30 = enumResult2;
tmp12[localName] = tmp27;
}
} else if ("scalar" === kind) {
prepareResult = tmp12;
prepareResult = localName;
prepareResult = tmp97;
prepareResult = tmp98;
prepareResult = self;
tmp12[localName] = self.scalar(tmp97, obj5.T, obj5.L, obj5.name);
}
}
}
continue;
} else {
let tmp5 = ignoreUnknownFields;
if (!ignoreUnknownFields.ignoreUnknownFields) {
let _Error = Error;
let tmp6 = tmp95;
let _HermesInternal = HermesInternal;
str = "Found unknown field while reading ";
let str2 = " from JSON format. JSON key: ";
let tmp7 = new.target;
let tmp8 = new.target;
let error1 = new Error("Found unknown field while reading " + self.info.typeName + " from JSON format. JSON key: " + tmp96);
let tmp10 = error1;
throw error1;
}
}
continue;
}
}
};
items[2] = obj;
items[3] = {
key: "enum",
value: function _enum(arg0, str) {
const self = this;
if ("google.protobuf.NullValue" == arg0[0]) {
const _HermesInternal = HermesInternal;
ReflectionJsonReader(outer1_1[5]).assert(null === str, "Unable to parse field " + self.info.typeName + "#" + arg2 + ", enum " + arg0[0] + " only accepts null.");
const obj = ReflectionJsonReader(outer1_1[5]);
}
if (null === str) {
return 0;
} else if ("number" === typeof str) {
const _Number = Number;
const _HermesInternal4 = HermesInternal;
const obj4 = ReflectionJsonReader(outer1_1[5]);
obj4.assert(Number.isInteger(str), "Unable to parse field " + self.info.typeName + "#" + arg2 + ", enum can only be integral number, got " + str + ".");
return str;
} else if ("string" === tmp31) {
let substr = str;
if (tmp13) {
substr = str.substring(arg0[2].length);
}
let tmp16 = undefined !== tmp15;
if (!tmp16) {
tmp16 = !arg3;
}
if (tmp16) {
const _HermesInternal3 = HermesInternal;
ReflectionJsonReader(outer1_1[5]).assert("number" === typeof tmp15, "Unable to parse field " + self.info.typeName + "#" + arg2 + ", enum " + arg0[0] + " has no value for \"" + str + "\".");
tmp16 = tmp15;
const obj3 = ReflectionJsonReader(outer1_1[5]);
}
return tmp16;
} else {
const _HermesInternal2 = HermesInternal;
ReflectionJsonReader(outer1_1[5]).assert(false, "Unable to parse field " + self.info.typeName + "#" + arg2 + ", cannot parse enum value from " + tmp31 + "\".");
}
}
};
items[4] = {
key: "scalar",
value: function scalar(actionData, arg1, STRING) {
const self = this;
if (ReflectionJsonReader(outer1_1[4]).ScalarType.DOUBLE !== arg1) {
if (ReflectionJsonReader(outer1_1[4]).ScalarType.FLOAT !== arg1) {
if (ReflectionJsonReader(outer1_1[4]).ScalarType.INT32 !== arg1) {
if (ReflectionJsonReader(outer1_1[4]).ScalarType.FIXED32 !== arg1) {
if (ReflectionJsonReader(outer1_1[4]).ScalarType.SFIXED32 !== arg1) {
if (ReflectionJsonReader(outer1_1[4]).ScalarType.SINT32 !== arg1) {
if (ReflectionJsonReader(outer1_1[4]).ScalarType.UINT32 !== arg1) {
if (ReflectionJsonReader(outer1_1[4]).ScalarType.INT64 !== arg1) {
if (ReflectionJsonReader(outer1_1[4]).ScalarType.SFIXED64 !== arg1) {
if (ReflectionJsonReader(outer1_1[4]).ScalarType.SINT64 !== arg1) {
if (ReflectionJsonReader(outer1_1[4]).ScalarType.FIXED64 !== arg1) {
let NumberResult = outer1_1;
if (ReflectionJsonReader(outer1_1[4]).ScalarType.UINT64 !== arg1) {
NumberResult = ReflectionJsonReader;
NumberResult = outer1_1;
if (ReflectionJsonReader(outer1_1[4]).ScalarType.BOOL === arg1) {
if (null === actionData) {
return false;
} else if ("boolean" === typeof actionData) {
NumberResult = actionData;
return actionData;
}
} else {
NumberResult = ReflectionJsonReader;
NumberResult = outer1_1;
if (ReflectionJsonReader(outer1_1[4]).ScalarType.STRING === arg1) {
if (null === actionData) {
return "";
} else if ("string" !== typeof actionData) {
let str = "extra whitespace";
} else {
const _encodeURIComponent = encodeURIComponent;
encodeURIComponent(actionData);
return actionData;
}
} else {
NumberResult = ReflectionJsonReader;
NumberResult = outer1_1;
if (ReflectionJsonReader(outer1_1[4]).ScalarType.BYTES === arg1) {
NumberResult = actionData;
NumberResult = null;
if (null !== actionData) {
if ("" !== actionData) {
if ("string" === typeof actionData) {
NumberResult = ReflectionJsonReader;
NumberResult = outer1_1;
NumberResult = actionData;
return ReflectionJsonReader(outer1_1[8]).base64decode(actionData);
}
}
}
const _Uint8Array = Uint8Array;
const uint8Array = new Uint8Array(0);
return uint8Array;
}
}
}
}
}
if (null === actionData) {
return ReflectionJsonReader(outer1_1[6]).reflectionLongConvert(ReflectionJsonReader(outer1_1[7]).PbULong.ZERO, STRING);
} else {
const PbULong = ReflectionJsonReader(outer1_1[7]).PbULong;
return ReflectionJsonReader(outer1_1[6]).reflectionLongConvert(PbULong.from(actionData), STRING);
}
}
}
}
if (null === actionData) {
return ReflectionJsonReader(outer1_1[6]).reflectionLongConvert(ReflectionJsonReader(outer1_1[7]).PbLong.ZERO, STRING);
} else {
const PbLong = ReflectionJsonReader(outer1_1[7]).PbLong;
return ReflectionJsonReader(outer1_1[6]).reflectionLongConvert(PbLong.from(actionData), STRING);
}
}
}
}
}
}
if (null === actionData) {
return 0;
} else {
NumberResult = actionData;
if ("number" === typeof actionData) {
NumberResult = actionData;
} else if ("" === actionData) {
str = "empty string";
} else if ("string" === typeof actionData) {
if (actionData.trim().length !== actionData.length) {
str = "extra whitespace";
} else {
const _Number = Number;
NumberResult = Number(actionData);
}
}
if (undefined !== NumberResult) {
NumberResult = arg1;
NumberResult = ReflectionJsonReader;
NumberResult = outer1_1;
if (arg1 == ReflectionJsonReader(outer1_1[4]).ScalarType.UINT32) {
ReflectionJsonReader(outer1_1[5]).assertUInt32(NumberResult);
const obj6 = ReflectionJsonReader(outer1_1[5]);
} else {
ReflectionJsonReader(outer1_1[5]).assertInt32(NumberResult);
const obj5 = ReflectionJsonReader(outer1_1[5]);
}
return NumberResult;
}
}
}
while (true) {
let tmp74 = arg3;
let tmp75 = str;
let str14 = "";
if (!str) {
break;
} else {
let tmp76 = str;
let str15 = " - ";
str14 = ` - ${str}`;
break;
}
let tmp77 = actionData;
let flag2 = false;
let assertResult = self.assert(false, arg3 + str14, actionData);
}
}
if (null === actionData) {
return 0;
} else {
NumberResult = actionData;
if ("NaN" === actionData) {
const _Number7 = Number;
return Number.NaN;
} else {
NumberResult = actionData;
if ("Infinity" === actionData) {
const _Number6 = Number;
return Number.POSITIVE_INFINITY;
} else {
NumberResult = actionData;
if ("-Infinity" === actionData) {
const _Number5 = Number;
return Number.NEGATIVE_INFINITY;
} else {
NumberResult = actionData;
if ("" === actionData) {
str = "empty string";
} else {
NumberResult = actionData;
if ("string" === typeof actionData) {
if (actionData.trim().length !== actionData.length) {
str = "extra whitespace";
}
}
if ("string" === typeof actionData) {
const _Number2 = Number;
const NumberResult1 = Number(actionData);
const _Number3 = Number;
if (Number.isNaN(NumberResult1)) {
str = "not a number";
} else {
const _Number4 = Number;
if (Number.isFinite(tmp62)) {
if (arg1 == ReflectionJsonReader(outer1_1[4]).ScalarType.FLOAT) {
ReflectionJsonReader(outer1_1[5]).assertFloat32(tmp62);
const obj7 = ReflectionJsonReader(outer1_1[5]);
}
return NumberResult1;
} else {
str = "too large or small";
}
}
}
}
}
}
}
}
}
};
return _defineProperties(ReflectionJsonReader, items);
})();