Edit File by line

Deprecated: str_replace(): Passing null to parameter #2 ($replace) of type array|string is deprecated in /home/sportsfever/public_html/filemanger/function.php on line 93

Warning: Undefined array key "page_file_edit_line" in /home/sportsfever/public_html/filemanger/edit_text_line.php on line 32
/home/sportsfe.../httpdocs/clone/wp-conte.../plugins/embedpre.../assets/pdf/build
File: pdf.worker.js
function isWhitespace(s, index) {
[39000] Fix | Delete
const ch = s[index];
[39001] Fix | Delete
return ch === " " || ch === "\n" || ch === "\r" || ch === "\t";
[39002] Fix | Delete
}
[39003] Fix | Delete
function isWhitespaceString(s) {
[39004] Fix | Delete
for (let i = 0, ii = s.length; i < ii; i++) {
[39005] Fix | Delete
if (!isWhitespace(s, i)) {
[39006] Fix | Delete
return false;
[39007] Fix | Delete
}
[39008] Fix | Delete
}
[39009] Fix | Delete
return true;
[39010] Fix | Delete
}
[39011] Fix | Delete
class XMLParserBase {
[39012] Fix | Delete
_resolveEntities(s) {
[39013] Fix | Delete
return s.replaceAll(/&([^;]+);/g, (all, entity) => {
[39014] Fix | Delete
if (entity.substring(0, 2) === "#x") {
[39015] Fix | Delete
return String.fromCodePoint(parseInt(entity.substring(2), 16));
[39016] Fix | Delete
} else if (entity.substring(0, 1) === "#") {
[39017] Fix | Delete
return String.fromCodePoint(parseInt(entity.substring(1), 10));
[39018] Fix | Delete
}
[39019] Fix | Delete
switch (entity) {
[39020] Fix | Delete
case "lt":
[39021] Fix | Delete
return "<";
[39022] Fix | Delete
case "gt":
[39023] Fix | Delete
return ">";
[39024] Fix | Delete
case "amp":
[39025] Fix | Delete
return "&";
[39026] Fix | Delete
case "quot":
[39027] Fix | Delete
return '"';
[39028] Fix | Delete
case "apos":
[39029] Fix | Delete
return "'";
[39030] Fix | Delete
}
[39031] Fix | Delete
return this.onResolveEntity(entity);
[39032] Fix | Delete
});
[39033] Fix | Delete
}
[39034] Fix | Delete
_parseContent(s, start) {
[39035] Fix | Delete
const attributes = [];
[39036] Fix | Delete
let pos = start;
[39037] Fix | Delete
function skipWs() {
[39038] Fix | Delete
while (pos < s.length && isWhitespace(s, pos)) {
[39039] Fix | Delete
++pos;
[39040] Fix | Delete
}
[39041] Fix | Delete
}
[39042] Fix | Delete
while (pos < s.length && !isWhitespace(s, pos) && s[pos] !== ">" && s[pos] !== "/") {
[39043] Fix | Delete
++pos;
[39044] Fix | Delete
}
[39045] Fix | Delete
const name = s.substring(start, pos);
[39046] Fix | Delete
skipWs();
[39047] Fix | Delete
while (pos < s.length && s[pos] !== ">" && s[pos] !== "/" && s[pos] !== "?") {
[39048] Fix | Delete
skipWs();
[39049] Fix | Delete
let attrName = "",
[39050] Fix | Delete
attrValue = "";
[39051] Fix | Delete
while (pos < s.length && !isWhitespace(s, pos) && s[pos] !== "=") {
[39052] Fix | Delete
attrName += s[pos];
[39053] Fix | Delete
++pos;
[39054] Fix | Delete
}
[39055] Fix | Delete
skipWs();
[39056] Fix | Delete
if (s[pos] !== "=") {
[39057] Fix | Delete
return null;
[39058] Fix | Delete
}
[39059] Fix | Delete
++pos;
[39060] Fix | Delete
skipWs();
[39061] Fix | Delete
const attrEndChar = s[pos];
[39062] Fix | Delete
if (attrEndChar !== '"' && attrEndChar !== "'") {
[39063] Fix | Delete
return null;
[39064] Fix | Delete
}
[39065] Fix | Delete
const attrEndIndex = s.indexOf(attrEndChar, ++pos);
[39066] Fix | Delete
if (attrEndIndex < 0) {
[39067] Fix | Delete
return null;
[39068] Fix | Delete
}
[39069] Fix | Delete
attrValue = s.substring(pos, attrEndIndex);
[39070] Fix | Delete
attributes.push({
[39071] Fix | Delete
name: attrName,
[39072] Fix | Delete
value: this._resolveEntities(attrValue)
[39073] Fix | Delete
});
[39074] Fix | Delete
pos = attrEndIndex + 1;
[39075] Fix | Delete
skipWs();
[39076] Fix | Delete
}
[39077] Fix | Delete
return {
[39078] Fix | Delete
name,
[39079] Fix | Delete
attributes,
[39080] Fix | Delete
parsed: pos - start
[39081] Fix | Delete
};
[39082] Fix | Delete
}
[39083] Fix | Delete
_parseProcessingInstruction(s, start) {
[39084] Fix | Delete
let pos = start;
[39085] Fix | Delete
function skipWs() {
[39086] Fix | Delete
while (pos < s.length && isWhitespace(s, pos)) {
[39087] Fix | Delete
++pos;
[39088] Fix | Delete
}
[39089] Fix | Delete
}
[39090] Fix | Delete
while (pos < s.length && !isWhitespace(s, pos) && s[pos] !== ">" && s[pos] !== "?" && s[pos] !== "/") {
[39091] Fix | Delete
++pos;
[39092] Fix | Delete
}
[39093] Fix | Delete
const name = s.substring(start, pos);
[39094] Fix | Delete
skipWs();
[39095] Fix | Delete
const attrStart = pos;
[39096] Fix | Delete
while (pos < s.length && (s[pos] !== "?" || s[pos + 1] !== ">")) {
[39097] Fix | Delete
++pos;
[39098] Fix | Delete
}
[39099] Fix | Delete
const value = s.substring(attrStart, pos);
[39100] Fix | Delete
return {
[39101] Fix | Delete
name,
[39102] Fix | Delete
value,
[39103] Fix | Delete
parsed: pos - start
[39104] Fix | Delete
};
[39105] Fix | Delete
}
[39106] Fix | Delete
parseXml(s) {
[39107] Fix | Delete
let i = 0;
[39108] Fix | Delete
while (i < s.length) {
[39109] Fix | Delete
const ch = s[i];
[39110] Fix | Delete
let j = i;
[39111] Fix | Delete
if (ch === "<") {
[39112] Fix | Delete
++j;
[39113] Fix | Delete
const ch2 = s[j];
[39114] Fix | Delete
let q;
[39115] Fix | Delete
switch (ch2) {
[39116] Fix | Delete
case "/":
[39117] Fix | Delete
++j;
[39118] Fix | Delete
q = s.indexOf(">", j);
[39119] Fix | Delete
if (q < 0) {
[39120] Fix | Delete
this.onError(XMLParserErrorCode.UnterminatedElement);
[39121] Fix | Delete
return;
[39122] Fix | Delete
}
[39123] Fix | Delete
this.onEndElement(s.substring(j, q));
[39124] Fix | Delete
j = q + 1;
[39125] Fix | Delete
break;
[39126] Fix | Delete
case "?":
[39127] Fix | Delete
++j;
[39128] Fix | Delete
const pi = this._parseProcessingInstruction(s, j);
[39129] Fix | Delete
if (s.substring(j + pi.parsed, j + pi.parsed + 2) !== "?>") {
[39130] Fix | Delete
this.onError(XMLParserErrorCode.UnterminatedXmlDeclaration);
[39131] Fix | Delete
return;
[39132] Fix | Delete
}
[39133] Fix | Delete
this.onPi(pi.name, pi.value);
[39134] Fix | Delete
j += pi.parsed + 2;
[39135] Fix | Delete
break;
[39136] Fix | Delete
case "!":
[39137] Fix | Delete
if (s.substring(j + 1, j + 3) === "--") {
[39138] Fix | Delete
q = s.indexOf("-->", j + 3);
[39139] Fix | Delete
if (q < 0) {
[39140] Fix | Delete
this.onError(XMLParserErrorCode.UnterminatedComment);
[39141] Fix | Delete
return;
[39142] Fix | Delete
}
[39143] Fix | Delete
this.onComment(s.substring(j + 3, q));
[39144] Fix | Delete
j = q + 3;
[39145] Fix | Delete
} else if (s.substring(j + 1, j + 8) === "[CDATA[") {
[39146] Fix | Delete
q = s.indexOf("]]>", j + 8);
[39147] Fix | Delete
if (q < 0) {
[39148] Fix | Delete
this.onError(XMLParserErrorCode.UnterminatedCdat);
[39149] Fix | Delete
return;
[39150] Fix | Delete
}
[39151] Fix | Delete
this.onCdata(s.substring(j + 8, q));
[39152] Fix | Delete
j = q + 3;
[39153] Fix | Delete
} else if (s.substring(j + 1, j + 8) === "DOCTYPE") {
[39154] Fix | Delete
const q2 = s.indexOf("[", j + 8);
[39155] Fix | Delete
let complexDoctype = false;
[39156] Fix | Delete
q = s.indexOf(">", j + 8);
[39157] Fix | Delete
if (q < 0) {
[39158] Fix | Delete
this.onError(XMLParserErrorCode.UnterminatedDoctypeDeclaration);
[39159] Fix | Delete
return;
[39160] Fix | Delete
}
[39161] Fix | Delete
if (q2 > 0 && q > q2) {
[39162] Fix | Delete
q = s.indexOf("]>", j + 8);
[39163] Fix | Delete
if (q < 0) {
[39164] Fix | Delete
this.onError(XMLParserErrorCode.UnterminatedDoctypeDeclaration);
[39165] Fix | Delete
return;
[39166] Fix | Delete
}
[39167] Fix | Delete
complexDoctype = true;
[39168] Fix | Delete
}
[39169] Fix | Delete
const doctypeContent = s.substring(j + 8, q + (complexDoctype ? 1 : 0));
[39170] Fix | Delete
this.onDoctype(doctypeContent);
[39171] Fix | Delete
j = q + (complexDoctype ? 2 : 1);
[39172] Fix | Delete
} else {
[39173] Fix | Delete
this.onError(XMLParserErrorCode.MalformedElement);
[39174] Fix | Delete
return;
[39175] Fix | Delete
}
[39176] Fix | Delete
break;
[39177] Fix | Delete
default:
[39178] Fix | Delete
const content = this._parseContent(s, j);
[39179] Fix | Delete
if (content === null) {
[39180] Fix | Delete
this.onError(XMLParserErrorCode.MalformedElement);
[39181] Fix | Delete
return;
[39182] Fix | Delete
}
[39183] Fix | Delete
let isClosed = false;
[39184] Fix | Delete
if (s.substring(j + content.parsed, j + content.parsed + 2) === "/>") {
[39185] Fix | Delete
isClosed = true;
[39186] Fix | Delete
} else if (s.substring(j + content.parsed, j + content.parsed + 1) !== ">") {
[39187] Fix | Delete
this.onError(XMLParserErrorCode.UnterminatedElement);
[39188] Fix | Delete
return;
[39189] Fix | Delete
}
[39190] Fix | Delete
this.onBeginElement(content.name, content.attributes, isClosed);
[39191] Fix | Delete
j += content.parsed + (isClosed ? 2 : 1);
[39192] Fix | Delete
break;
[39193] Fix | Delete
}
[39194] Fix | Delete
} else {
[39195] Fix | Delete
while (j < s.length && s[j] !== "<") {
[39196] Fix | Delete
j++;
[39197] Fix | Delete
}
[39198] Fix | Delete
const text = s.substring(i, j);
[39199] Fix | Delete
this.onText(this._resolveEntities(text));
[39200] Fix | Delete
}
[39201] Fix | Delete
i = j;
[39202] Fix | Delete
}
[39203] Fix | Delete
}
[39204] Fix | Delete
onResolveEntity(name) {
[39205] Fix | Delete
return `&${name};`;
[39206] Fix | Delete
}
[39207] Fix | Delete
onPi(name, value) {}
[39208] Fix | Delete
onComment(text) {}
[39209] Fix | Delete
onCdata(text) {}
[39210] Fix | Delete
onDoctype(doctypeContent) {}
[39211] Fix | Delete
onText(text) {}
[39212] Fix | Delete
onBeginElement(name, attributes, isEmpty) {}
[39213] Fix | Delete
onEndElement(name) {}
[39214] Fix | Delete
onError(code) {}
[39215] Fix | Delete
}
[39216] Fix | Delete
class SimpleDOMNode {
[39217] Fix | Delete
constructor(nodeName, nodeValue) {
[39218] Fix | Delete
this.nodeName = nodeName;
[39219] Fix | Delete
this.nodeValue = nodeValue;
[39220] Fix | Delete
Object.defineProperty(this, "parentNode", {
[39221] Fix | Delete
value: null,
[39222] Fix | Delete
writable: true
[39223] Fix | Delete
});
[39224] Fix | Delete
}
[39225] Fix | Delete
get firstChild() {
[39226] Fix | Delete
return this.childNodes?.[0];
[39227] Fix | Delete
}
[39228] Fix | Delete
get nextSibling() {
[39229] Fix | Delete
const childNodes = this.parentNode.childNodes;
[39230] Fix | Delete
if (!childNodes) {
[39231] Fix | Delete
return undefined;
[39232] Fix | Delete
}
[39233] Fix | Delete
const index = childNodes.indexOf(this);
[39234] Fix | Delete
if (index === -1) {
[39235] Fix | Delete
return undefined;
[39236] Fix | Delete
}
[39237] Fix | Delete
return childNodes[index + 1];
[39238] Fix | Delete
}
[39239] Fix | Delete
get textContent() {
[39240] Fix | Delete
if (!this.childNodes) {
[39241] Fix | Delete
return this.nodeValue || "";
[39242] Fix | Delete
}
[39243] Fix | Delete
return this.childNodes.map(function (child) {
[39244] Fix | Delete
return child.textContent;
[39245] Fix | Delete
}).join("");
[39246] Fix | Delete
}
[39247] Fix | Delete
get children() {
[39248] Fix | Delete
return this.childNodes || [];
[39249] Fix | Delete
}
[39250] Fix | Delete
hasChildNodes() {
[39251] Fix | Delete
return this.childNodes?.length > 0;
[39252] Fix | Delete
}
[39253] Fix | Delete
searchNode(paths, pos) {
[39254] Fix | Delete
if (pos >= paths.length) {
[39255] Fix | Delete
return this;
[39256] Fix | Delete
}
[39257] Fix | Delete
const component = paths[pos];
[39258] Fix | Delete
if (component.name.startsWith("#") && pos < paths.length - 1) {
[39259] Fix | Delete
return this.searchNode(paths, pos + 1);
[39260] Fix | Delete
}
[39261] Fix | Delete
const stack = [];
[39262] Fix | Delete
let node = this;
[39263] Fix | Delete
while (true) {
[39264] Fix | Delete
if (component.name === node.nodeName) {
[39265] Fix | Delete
if (component.pos === 0) {
[39266] Fix | Delete
const res = node.searchNode(paths, pos + 1);
[39267] Fix | Delete
if (res !== null) {
[39268] Fix | Delete
return res;
[39269] Fix | Delete
}
[39270] Fix | Delete
} else if (stack.length === 0) {
[39271] Fix | Delete
return null;
[39272] Fix | Delete
} else {
[39273] Fix | Delete
const [parent] = stack.pop();
[39274] Fix | Delete
let siblingPos = 0;
[39275] Fix | Delete
for (const child of parent.childNodes) {
[39276] Fix | Delete
if (component.name === child.nodeName) {
[39277] Fix | Delete
if (siblingPos === component.pos) {
[39278] Fix | Delete
return child.searchNode(paths, pos + 1);
[39279] Fix | Delete
}
[39280] Fix | Delete
siblingPos++;
[39281] Fix | Delete
}
[39282] Fix | Delete
}
[39283] Fix | Delete
return node.searchNode(paths, pos + 1);
[39284] Fix | Delete
}
[39285] Fix | Delete
}
[39286] Fix | Delete
if (node.childNodes?.length > 0) {
[39287] Fix | Delete
stack.push([node, 0]);
[39288] Fix | Delete
node = node.childNodes[0];
[39289] Fix | Delete
} else if (stack.length === 0) {
[39290] Fix | Delete
return null;
[39291] Fix | Delete
} else {
[39292] Fix | Delete
while (stack.length !== 0) {
[39293] Fix | Delete
const [parent, currentPos] = stack.pop();
[39294] Fix | Delete
const newPos = currentPos + 1;
[39295] Fix | Delete
if (newPos < parent.childNodes.length) {
[39296] Fix | Delete
stack.push([parent, newPos]);
[39297] Fix | Delete
node = parent.childNodes[newPos];
[39298] Fix | Delete
break;
[39299] Fix | Delete
}
[39300] Fix | Delete
}
[39301] Fix | Delete
if (stack.length === 0) {
[39302] Fix | Delete
return null;
[39303] Fix | Delete
}
[39304] Fix | Delete
}
[39305] Fix | Delete
}
[39306] Fix | Delete
}
[39307] Fix | Delete
dump(buffer) {
[39308] Fix | Delete
if (this.nodeName === "#text") {
[39309] Fix | Delete
buffer.push(encodeToXmlString(this.nodeValue));
[39310] Fix | Delete
return;
[39311] Fix | Delete
}
[39312] Fix | Delete
buffer.push(`<${this.nodeName}`);
[39313] Fix | Delete
if (this.attributes) {
[39314] Fix | Delete
for (const attribute of this.attributes) {
[39315] Fix | Delete
buffer.push(` ${attribute.name}="${encodeToXmlString(attribute.value)}"`);
[39316] Fix | Delete
}
[39317] Fix | Delete
}
[39318] Fix | Delete
if (this.hasChildNodes()) {
[39319] Fix | Delete
buffer.push(">");
[39320] Fix | Delete
for (const child of this.childNodes) {
[39321] Fix | Delete
child.dump(buffer);
[39322] Fix | Delete
}
[39323] Fix | Delete
buffer.push(`</${this.nodeName}>`);
[39324] Fix | Delete
} else if (this.nodeValue) {
[39325] Fix | Delete
buffer.push(`>${encodeToXmlString(this.nodeValue)}</${this.nodeName}>`);
[39326] Fix | Delete
} else {
[39327] Fix | Delete
buffer.push("/>");
[39328] Fix | Delete
}
[39329] Fix | Delete
}
[39330] Fix | Delete
}
[39331] Fix | Delete
class SimpleXMLParser extends XMLParserBase {
[39332] Fix | Delete
constructor({
[39333] Fix | Delete
hasAttributes = false,
[39334] Fix | Delete
lowerCaseName = false
[39335] Fix | Delete
}) {
[39336] Fix | Delete
super();
[39337] Fix | Delete
this._currentFragment = null;
[39338] Fix | Delete
this._stack = null;
[39339] Fix | Delete
this._errorCode = XMLParserErrorCode.NoError;
[39340] Fix | Delete
this._hasAttributes = hasAttributes;
[39341] Fix | Delete
this._lowerCaseName = lowerCaseName;
[39342] Fix | Delete
}
[39343] Fix | Delete
parseFromString(data) {
[39344] Fix | Delete
this._currentFragment = [];
[39345] Fix | Delete
this._stack = [];
[39346] Fix | Delete
this._errorCode = XMLParserErrorCode.NoError;
[39347] Fix | Delete
this.parseXml(data);
[39348] Fix | Delete
if (this._errorCode !== XMLParserErrorCode.NoError) {
[39349] Fix | Delete
return undefined;
[39350] Fix | Delete
}
[39351] Fix | Delete
const [documentElement] = this._currentFragment;
[39352] Fix | Delete
if (!documentElement) {
[39353] Fix | Delete
return undefined;
[39354] Fix | Delete
}
[39355] Fix | Delete
return {
[39356] Fix | Delete
documentElement
[39357] Fix | Delete
};
[39358] Fix | Delete
}
[39359] Fix | Delete
onText(text) {
[39360] Fix | Delete
if (isWhitespaceString(text)) {
[39361] Fix | Delete
return;
[39362] Fix | Delete
}
[39363] Fix | Delete
const node = new SimpleDOMNode("#text", text);
[39364] Fix | Delete
this._currentFragment.push(node);
[39365] Fix | Delete
}
[39366] Fix | Delete
onCdata(text) {
[39367] Fix | Delete
const node = new SimpleDOMNode("#text", text);
[39368] Fix | Delete
this._currentFragment.push(node);
[39369] Fix | Delete
}
[39370] Fix | Delete
onBeginElement(name, attributes, isEmpty) {
[39371] Fix | Delete
if (this._lowerCaseName) {
[39372] Fix | Delete
name = name.toLowerCase();
[39373] Fix | Delete
}
[39374] Fix | Delete
const node = new SimpleDOMNode(name);
[39375] Fix | Delete
node.childNodes = [];
[39376] Fix | Delete
if (this._hasAttributes) {
[39377] Fix | Delete
node.attributes = attributes;
[39378] Fix | Delete
}
[39379] Fix | Delete
this._currentFragment.push(node);
[39380] Fix | Delete
if (isEmpty) {
[39381] Fix | Delete
return;
[39382] Fix | Delete
}
[39383] Fix | Delete
this._stack.push(this._currentFragment);
[39384] Fix | Delete
this._currentFragment = node.childNodes;
[39385] Fix | Delete
}
[39386] Fix | Delete
onEndElement(name) {
[39387] Fix | Delete
this._currentFragment = this._stack.pop() || [];
[39388] Fix | Delete
const lastElement = this._currentFragment.at(-1);
[39389] Fix | Delete
if (!lastElement) {
[39390] Fix | Delete
return null;
[39391] Fix | Delete
}
[39392] Fix | Delete
for (const childNode of lastElement.childNodes) {
[39393] Fix | Delete
childNode.parentNode = lastElement;
[39394] Fix | Delete
}
[39395] Fix | Delete
return lastElement;
[39396] Fix | Delete
}
[39397] Fix | Delete
onError(code) {
[39398] Fix | Delete
this._errorCode = code;
[39399] Fix | Delete
}
[39400] Fix | Delete
}
[39401] Fix | Delete
[39402] Fix | Delete
;// CONCATENATED MODULE: ./src/core/metadata_parser.js
[39403] Fix | Delete
[39404] Fix | Delete
[39405] Fix | Delete
[39406] Fix | Delete
[39407] Fix | Delete
[39408] Fix | Delete
class MetadataParser {
[39409] Fix | Delete
constructor(data) {
[39410] Fix | Delete
data = this._repair(data);
[39411] Fix | Delete
const parser = new SimpleXMLParser({
[39412] Fix | Delete
lowerCaseName: true
[39413] Fix | Delete
});
[39414] Fix | Delete
const xmlDocument = parser.parseFromString(data);
[39415] Fix | Delete
this._metadataMap = new Map();
[39416] Fix | Delete
this._data = data;
[39417] Fix | Delete
if (xmlDocument) {
[39418] Fix | Delete
this._parse(xmlDocument);
[39419] Fix | Delete
}
[39420] Fix | Delete
}
[39421] Fix | Delete
_repair(data) {
[39422] Fix | Delete
return data.replace(/^[^<]+/, "").replaceAll(/>\\376\\377([^<]+)/g, function (all, codes) {
[39423] Fix | Delete
const bytes = codes.replaceAll(/\\([0-3])([0-7])([0-7])/g, function (code, d1, d2, d3) {
[39424] Fix | Delete
return String.fromCharCode(d1 * 64 + d2 * 8 + d3 * 1);
[39425] Fix | Delete
}).replaceAll(/&(amp|apos|gt|lt|quot);/g, function (str, name) {
[39426] Fix | Delete
switch (name) {
[39427] Fix | Delete
case "amp":
[39428] Fix | Delete
return "&";
[39429] Fix | Delete
case "apos":
[39430] Fix | Delete
return "'";
[39431] Fix | Delete
case "gt":
[39432] Fix | Delete
return ">";
[39433] Fix | Delete
case "lt":
[39434] Fix | Delete
return "<";
[39435] Fix | Delete
case "quot":
[39436] Fix | Delete
return '"';
[39437] Fix | Delete
}
[39438] Fix | Delete
throw new Error(`_repair: ${name} isn't defined.`);
[39439] Fix | Delete
});
[39440] Fix | Delete
const charBuf = [">"];
[39441] Fix | Delete
for (let i = 0, ii = bytes.length; i < ii; i += 2) {
[39442] Fix | Delete
const code = bytes.charCodeAt(i) * 256 + bytes.charCodeAt(i + 1);
[39443] Fix | Delete
if (code >= 32 && code < 127 && code !== 60 && code !== 62 && code !== 38) {
[39444] Fix | Delete
charBuf.push(String.fromCharCode(code));
[39445] Fix | Delete
} else {
[39446] Fix | Delete
charBuf.push("&#x" + (0x10000 + code).toString(16).substring(1) + ";");
[39447] Fix | Delete
}
[39448] Fix | Delete
}
[39449] Fix | Delete
return charBuf.join("");
[39450] Fix | Delete
});
[39451] Fix | Delete
}
[39452] Fix | Delete
_getSequence(entry) {
[39453] Fix | Delete
const name = entry.nodeName;
[39454] Fix | Delete
if (name !== "rdf:bag" && name !== "rdf:seq" && name !== "rdf:alt") {
[39455] Fix | Delete
return null;
[39456] Fix | Delete
}
[39457] Fix | Delete
return entry.childNodes.filter(node => node.nodeName === "rdf:li");
[39458] Fix | Delete
}
[39459] Fix | Delete
_parseArray(entry) {
[39460] Fix | Delete
if (!entry.hasChildNodes()) {
[39461] Fix | Delete
return;
[39462] Fix | Delete
}
[39463] Fix | Delete
const [seqNode] = entry.childNodes;
[39464] Fix | Delete
const sequence = this._getSequence(seqNode) || [];
[39465] Fix | Delete
this._metadataMap.set(entry.nodeName, sequence.map(node => node.textContent.trim()));
[39466] Fix | Delete
}
[39467] Fix | Delete
_parse(xmlDocument) {
[39468] Fix | Delete
let rdf = xmlDocument.documentElement;
[39469] Fix | Delete
if (rdf.nodeName !== "rdf:rdf") {
[39470] Fix | Delete
rdf = rdf.firstChild;
[39471] Fix | Delete
while (rdf && rdf.nodeName !== "rdf:rdf") {
[39472] Fix | Delete
rdf = rdf.nextSibling;
[39473] Fix | Delete
}
[39474] Fix | Delete
}
[39475] Fix | Delete
if (!rdf || rdf.nodeName !== "rdf:rdf" || !rdf.hasChildNodes()) {
[39476] Fix | Delete
return;
[39477] Fix | Delete
}
[39478] Fix | Delete
for (const desc of rdf.childNodes) {
[39479] Fix | Delete
if (desc.nodeName !== "rdf:description") {
[39480] Fix | Delete
continue;
[39481] Fix | Delete
}
[39482] Fix | Delete
for (const entry of desc.childNodes) {
[39483] Fix | Delete
const name = entry.nodeName;
[39484] Fix | Delete
switch (name) {
[39485] Fix | Delete
case "#text":
[39486] Fix | Delete
continue;
[39487] Fix | Delete
case "dc:creator":
[39488] Fix | Delete
case "dc:subject":
[39489] Fix | Delete
this._parseArray(entry);
[39490] Fix | Delete
continue;
[39491] Fix | Delete
}
[39492] Fix | Delete
this._metadataMap.set(name, entry.textContent.trim());
[39493] Fix | Delete
}
[39494] Fix | Delete
}
[39495] Fix | Delete
}
[39496] Fix | Delete
get serializable() {
[39497] Fix | Delete
return {
[39498] Fix | Delete
parsedData: this._metadataMap,
[39499] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function