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/wp-conte.../plugins/embedpre.../assets/pdf/build
File: pdf.worker.js
if (subDict.size > 0) {
[5500] Fix | Delete
mergedDict._map[name] = subDict;
[5501] Fix | Delete
}
[5502] Fix | Delete
}
[5503] Fix | Delete
properties.clear();
[5504] Fix | Delete
return mergedDict.size > 0 ? mergedDict : Dict.empty;
[5505] Fix | Delete
}
[5506] Fix | Delete
clone() {
[5507] Fix | Delete
const dict = new Dict(this.xref);
[5508] Fix | Delete
for (const key of this.getKeys()) {
[5509] Fix | Delete
dict.set(key, this.getRaw(key));
[5510] Fix | Delete
}
[5511] Fix | Delete
return dict;
[5512] Fix | Delete
}
[5513] Fix | Delete
}
[5514] Fix | Delete
class Ref {
[5515] Fix | Delete
constructor(num, gen) {
[5516] Fix | Delete
this.num = num;
[5517] Fix | Delete
this.gen = gen;
[5518] Fix | Delete
}
[5519] Fix | Delete
toString() {
[5520] Fix | Delete
if (this.gen === 0) {
[5521] Fix | Delete
return `${this.num}R`;
[5522] Fix | Delete
}
[5523] Fix | Delete
return `${this.num}R${this.gen}`;
[5524] Fix | Delete
}
[5525] Fix | Delete
static fromString(str) {
[5526] Fix | Delete
const ref = RefCache[str];
[5527] Fix | Delete
if (ref) {
[5528] Fix | Delete
return ref;
[5529] Fix | Delete
}
[5530] Fix | Delete
const m = /^(\d+)R(\d*)$/.exec(str);
[5531] Fix | Delete
if (!m || m[1] === "0") {
[5532] Fix | Delete
return null;
[5533] Fix | Delete
}
[5534] Fix | Delete
return RefCache[str] = new Ref(parseInt(m[1]), !m[2] ? 0 : parseInt(m[2]));
[5535] Fix | Delete
}
[5536] Fix | Delete
static get(num, gen) {
[5537] Fix | Delete
const key = gen === 0 ? `${num}R` : `${num}R${gen}`;
[5538] Fix | Delete
return RefCache[key] ||= new Ref(num, gen);
[5539] Fix | Delete
}
[5540] Fix | Delete
}
[5541] Fix | Delete
class RefSet {
[5542] Fix | Delete
constructor(parent = null) {
[5543] Fix | Delete
this._set = new Set(parent?._set);
[5544] Fix | Delete
}
[5545] Fix | Delete
has(ref) {
[5546] Fix | Delete
return this._set.has(ref.toString());
[5547] Fix | Delete
}
[5548] Fix | Delete
put(ref) {
[5549] Fix | Delete
this._set.add(ref.toString());
[5550] Fix | Delete
}
[5551] Fix | Delete
remove(ref) {
[5552] Fix | Delete
this._set.delete(ref.toString());
[5553] Fix | Delete
}
[5554] Fix | Delete
[Symbol.iterator]() {
[5555] Fix | Delete
return this._set.values();
[5556] Fix | Delete
}
[5557] Fix | Delete
clear() {
[5558] Fix | Delete
this._set.clear();
[5559] Fix | Delete
}
[5560] Fix | Delete
}
[5561] Fix | Delete
class RefSetCache {
[5562] Fix | Delete
constructor() {
[5563] Fix | Delete
this._map = new Map();
[5564] Fix | Delete
}
[5565] Fix | Delete
get size() {
[5566] Fix | Delete
return this._map.size;
[5567] Fix | Delete
}
[5568] Fix | Delete
get(ref) {
[5569] Fix | Delete
return this._map.get(ref.toString());
[5570] Fix | Delete
}
[5571] Fix | Delete
has(ref) {
[5572] Fix | Delete
return this._map.has(ref.toString());
[5573] Fix | Delete
}
[5574] Fix | Delete
put(ref, obj) {
[5575] Fix | Delete
this._map.set(ref.toString(), obj);
[5576] Fix | Delete
}
[5577] Fix | Delete
putAlias(ref, aliasRef) {
[5578] Fix | Delete
this._map.set(ref.toString(), this.get(aliasRef));
[5579] Fix | Delete
}
[5580] Fix | Delete
[Symbol.iterator]() {
[5581] Fix | Delete
return this._map.values();
[5582] Fix | Delete
}
[5583] Fix | Delete
clear() {
[5584] Fix | Delete
this._map.clear();
[5585] Fix | Delete
}
[5586] Fix | Delete
*items() {
[5587] Fix | Delete
for (const [ref, value] of this._map) {
[5588] Fix | Delete
yield [Ref.fromString(ref), value];
[5589] Fix | Delete
}
[5590] Fix | Delete
}
[5591] Fix | Delete
}
[5592] Fix | Delete
function isName(v, name) {
[5593] Fix | Delete
return v instanceof Name && (name === undefined || v.name === name);
[5594] Fix | Delete
}
[5595] Fix | Delete
function isCmd(v, cmd) {
[5596] Fix | Delete
return v instanceof Cmd && (cmd === undefined || v.cmd === cmd);
[5597] Fix | Delete
}
[5598] Fix | Delete
function isDict(v, type) {
[5599] Fix | Delete
return v instanceof Dict && (type === undefined || isName(v.get("Type"), type));
[5600] Fix | Delete
}
[5601] Fix | Delete
function isRefsEqual(v1, v2) {
[5602] Fix | Delete
return v1.num === v2.num && v1.gen === v2.gen;
[5603] Fix | Delete
}
[5604] Fix | Delete
[5605] Fix | Delete
;// CONCATENATED MODULE: ./src/core/base_stream.js
[5606] Fix | Delete
[5607] Fix | Delete
class BaseStream {
[5608] Fix | Delete
constructor() {
[5609] Fix | Delete
if (this.constructor === BaseStream) {
[5610] Fix | Delete
unreachable("Cannot initialize BaseStream.");
[5611] Fix | Delete
}
[5612] Fix | Delete
}
[5613] Fix | Delete
get length() {
[5614] Fix | Delete
unreachable("Abstract getter `length` accessed");
[5615] Fix | Delete
}
[5616] Fix | Delete
get isEmpty() {
[5617] Fix | Delete
unreachable("Abstract getter `isEmpty` accessed");
[5618] Fix | Delete
}
[5619] Fix | Delete
get isDataLoaded() {
[5620] Fix | Delete
return shadow(this, "isDataLoaded", true);
[5621] Fix | Delete
}
[5622] Fix | Delete
getByte() {
[5623] Fix | Delete
unreachable("Abstract method `getByte` called");
[5624] Fix | Delete
}
[5625] Fix | Delete
getBytes(length) {
[5626] Fix | Delete
unreachable("Abstract method `getBytes` called");
[5627] Fix | Delete
}
[5628] Fix | Delete
peekByte() {
[5629] Fix | Delete
const peekedByte = this.getByte();
[5630] Fix | Delete
if (peekedByte !== -1) {
[5631] Fix | Delete
this.pos--;
[5632] Fix | Delete
}
[5633] Fix | Delete
return peekedByte;
[5634] Fix | Delete
}
[5635] Fix | Delete
peekBytes(length) {
[5636] Fix | Delete
const bytes = this.getBytes(length);
[5637] Fix | Delete
this.pos -= bytes.length;
[5638] Fix | Delete
return bytes;
[5639] Fix | Delete
}
[5640] Fix | Delete
getUint16() {
[5641] Fix | Delete
const b0 = this.getByte();
[5642] Fix | Delete
const b1 = this.getByte();
[5643] Fix | Delete
if (b0 === -1 || b1 === -1) {
[5644] Fix | Delete
return -1;
[5645] Fix | Delete
}
[5646] Fix | Delete
return (b0 << 8) + b1;
[5647] Fix | Delete
}
[5648] Fix | Delete
getInt32() {
[5649] Fix | Delete
const b0 = this.getByte();
[5650] Fix | Delete
const b1 = this.getByte();
[5651] Fix | Delete
const b2 = this.getByte();
[5652] Fix | Delete
const b3 = this.getByte();
[5653] Fix | Delete
return (b0 << 24) + (b1 << 16) + (b2 << 8) + b3;
[5654] Fix | Delete
}
[5655] Fix | Delete
getByteRange(begin, end) {
[5656] Fix | Delete
unreachable("Abstract method `getByteRange` called");
[5657] Fix | Delete
}
[5658] Fix | Delete
getString(length) {
[5659] Fix | Delete
return bytesToString(this.getBytes(length));
[5660] Fix | Delete
}
[5661] Fix | Delete
skip(n) {
[5662] Fix | Delete
this.pos += n || 1;
[5663] Fix | Delete
}
[5664] Fix | Delete
reset() {
[5665] Fix | Delete
unreachable("Abstract method `reset` called");
[5666] Fix | Delete
}
[5667] Fix | Delete
moveStart() {
[5668] Fix | Delete
unreachable("Abstract method `moveStart` called");
[5669] Fix | Delete
}
[5670] Fix | Delete
makeSubStream(start, length, dict = null) {
[5671] Fix | Delete
unreachable("Abstract method `makeSubStream` called");
[5672] Fix | Delete
}
[5673] Fix | Delete
getBaseStreams() {
[5674] Fix | Delete
return null;
[5675] Fix | Delete
}
[5676] Fix | Delete
}
[5677] Fix | Delete
[5678] Fix | Delete
;// CONCATENATED MODULE: ./src/core/core_utils.js
[5679] Fix | Delete
[5680] Fix | Delete
[5681] Fix | Delete
[5682] Fix | Delete
[5683] Fix | Delete
[5684] Fix | Delete
[5685] Fix | Delete
[5686] Fix | Delete
[5687] Fix | Delete
[5688] Fix | Delete
[5689] Fix | Delete
[5690] Fix | Delete
[5691] Fix | Delete
[5692] Fix | Delete
[5693] Fix | Delete
[5694] Fix | Delete
[5695] Fix | Delete
[5696] Fix | Delete
[5697] Fix | Delete
[5698] Fix | Delete
[5699] Fix | Delete
const PDF_VERSION_REGEXP = /^[1-9]\.\d$/;
[5700] Fix | Delete
function getLookupTableFactory(initializer) {
[5701] Fix | Delete
let lookup;
[5702] Fix | Delete
return function () {
[5703] Fix | Delete
if (initializer) {
[5704] Fix | Delete
lookup = Object.create(null);
[5705] Fix | Delete
initializer(lookup);
[5706] Fix | Delete
initializer = null;
[5707] Fix | Delete
}
[5708] Fix | Delete
return lookup;
[5709] Fix | Delete
};
[5710] Fix | Delete
}
[5711] Fix | Delete
class MissingDataException extends BaseException {
[5712] Fix | Delete
constructor(begin, end) {
[5713] Fix | Delete
super(`Missing data [${begin}, ${end})`, "MissingDataException");
[5714] Fix | Delete
this.begin = begin;
[5715] Fix | Delete
this.end = end;
[5716] Fix | Delete
}
[5717] Fix | Delete
}
[5718] Fix | Delete
class ParserEOFException extends BaseException {
[5719] Fix | Delete
constructor(msg) {
[5720] Fix | Delete
super(msg, "ParserEOFException");
[5721] Fix | Delete
}
[5722] Fix | Delete
}
[5723] Fix | Delete
class XRefEntryException extends BaseException {
[5724] Fix | Delete
constructor(msg) {
[5725] Fix | Delete
super(msg, "XRefEntryException");
[5726] Fix | Delete
}
[5727] Fix | Delete
}
[5728] Fix | Delete
class XRefParseException extends BaseException {
[5729] Fix | Delete
constructor(msg) {
[5730] Fix | Delete
super(msg, "XRefParseException");
[5731] Fix | Delete
}
[5732] Fix | Delete
}
[5733] Fix | Delete
function arrayBuffersToBytes(arr) {
[5734] Fix | Delete
const length = arr.length;
[5735] Fix | Delete
if (length === 0) {
[5736] Fix | Delete
return new Uint8Array(0);
[5737] Fix | Delete
}
[5738] Fix | Delete
if (length === 1) {
[5739] Fix | Delete
return new Uint8Array(arr[0]);
[5740] Fix | Delete
}
[5741] Fix | Delete
let dataLength = 0;
[5742] Fix | Delete
for (let i = 0; i < length; i++) {
[5743] Fix | Delete
dataLength += arr[i].byteLength;
[5744] Fix | Delete
}
[5745] Fix | Delete
const data = new Uint8Array(dataLength);
[5746] Fix | Delete
let pos = 0;
[5747] Fix | Delete
for (let i = 0; i < length; i++) {
[5748] Fix | Delete
const item = new Uint8Array(arr[i]);
[5749] Fix | Delete
data.set(item, pos);
[5750] Fix | Delete
pos += item.byteLength;
[5751] Fix | Delete
}
[5752] Fix | Delete
return data;
[5753] Fix | Delete
}
[5754] Fix | Delete
function getInheritableProperty({
[5755] Fix | Delete
dict,
[5756] Fix | Delete
key,
[5757] Fix | Delete
getArray = false,
[5758] Fix | Delete
stopWhenFound = true
[5759] Fix | Delete
}) {
[5760] Fix | Delete
let values;
[5761] Fix | Delete
const visited = new RefSet();
[5762] Fix | Delete
while (dict instanceof Dict && !(dict.objId && visited.has(dict.objId))) {
[5763] Fix | Delete
if (dict.objId) {
[5764] Fix | Delete
visited.put(dict.objId);
[5765] Fix | Delete
}
[5766] Fix | Delete
const value = getArray ? dict.getArray(key) : dict.get(key);
[5767] Fix | Delete
if (value !== undefined) {
[5768] Fix | Delete
if (stopWhenFound) {
[5769] Fix | Delete
return value;
[5770] Fix | Delete
}
[5771] Fix | Delete
(values ||= []).push(value);
[5772] Fix | Delete
}
[5773] Fix | Delete
dict = dict.get("Parent");
[5774] Fix | Delete
}
[5775] Fix | Delete
return values;
[5776] Fix | Delete
}
[5777] Fix | Delete
const ROMAN_NUMBER_MAP = ["", "C", "CC", "CCC", "CD", "D", "DC", "DCC", "DCCC", "CM", "", "X", "XX", "XXX", "XL", "L", "LX", "LXX", "LXXX", "XC", "", "I", "II", "III", "IV", "V", "VI", "VII", "VIII", "IX"];
[5778] Fix | Delete
function toRomanNumerals(number, lowerCase = false) {
[5779] Fix | Delete
assert(Number.isInteger(number) && number > 0, "The number should be a positive integer.");
[5780] Fix | Delete
const romanBuf = [];
[5781] Fix | Delete
let pos;
[5782] Fix | Delete
while (number >= 1000) {
[5783] Fix | Delete
number -= 1000;
[5784] Fix | Delete
romanBuf.push("M");
[5785] Fix | Delete
}
[5786] Fix | Delete
pos = number / 100 | 0;
[5787] Fix | Delete
number %= 100;
[5788] Fix | Delete
romanBuf.push(ROMAN_NUMBER_MAP[pos]);
[5789] Fix | Delete
pos = number / 10 | 0;
[5790] Fix | Delete
number %= 10;
[5791] Fix | Delete
romanBuf.push(ROMAN_NUMBER_MAP[10 + pos]);
[5792] Fix | Delete
romanBuf.push(ROMAN_NUMBER_MAP[20 + number]);
[5793] Fix | Delete
const romanStr = romanBuf.join("");
[5794] Fix | Delete
return lowerCase ? romanStr.toLowerCase() : romanStr;
[5795] Fix | Delete
}
[5796] Fix | Delete
function log2(x) {
[5797] Fix | Delete
if (x <= 0) {
[5798] Fix | Delete
return 0;
[5799] Fix | Delete
}
[5800] Fix | Delete
return Math.ceil(Math.log2(x));
[5801] Fix | Delete
}
[5802] Fix | Delete
function readInt8(data, offset) {
[5803] Fix | Delete
return data[offset] << 24 >> 24;
[5804] Fix | Delete
}
[5805] Fix | Delete
function readUint16(data, offset) {
[5806] Fix | Delete
return data[offset] << 8 | data[offset + 1];
[5807] Fix | Delete
}
[5808] Fix | Delete
function readUint32(data, offset) {
[5809] Fix | Delete
return (data[offset] << 24 | data[offset + 1] << 16 | data[offset + 2] << 8 | data[offset + 3]) >>> 0;
[5810] Fix | Delete
}
[5811] Fix | Delete
function isWhiteSpace(ch) {
[5812] Fix | Delete
return ch === 0x20 || ch === 0x09 || ch === 0x0d || ch === 0x0a;
[5813] Fix | Delete
}
[5814] Fix | Delete
function isBooleanArray(arr, len) {
[5815] Fix | Delete
return Array.isArray(arr) && (len === null || arr.length === len) && arr.every(x => typeof x === "boolean");
[5816] Fix | Delete
}
[5817] Fix | Delete
function isNumberArray(arr, len) {
[5818] Fix | Delete
return Array.isArray(arr) && (len === null || arr.length === len) && arr.every(x => typeof x === "number");
[5819] Fix | Delete
}
[5820] Fix | Delete
function lookupMatrix(arr, fallback) {
[5821] Fix | Delete
return isNumberArray(arr, 6) ? arr : fallback;
[5822] Fix | Delete
}
[5823] Fix | Delete
function lookupRect(arr, fallback) {
[5824] Fix | Delete
return isNumberArray(arr, 4) ? arr : fallback;
[5825] Fix | Delete
}
[5826] Fix | Delete
function lookupNormalRect(arr, fallback) {
[5827] Fix | Delete
return isNumberArray(arr, 4) ? Util.normalizeRect(arr) : fallback;
[5828] Fix | Delete
}
[5829] Fix | Delete
function parseXFAPath(path) {
[5830] Fix | Delete
const positionPattern = /(.+)\[(\d+)\]$/;
[5831] Fix | Delete
return path.split(".").map(component => {
[5832] Fix | Delete
const m = component.match(positionPattern);
[5833] Fix | Delete
if (m) {
[5834] Fix | Delete
return {
[5835] Fix | Delete
name: m[1],
[5836] Fix | Delete
pos: parseInt(m[2], 10)
[5837] Fix | Delete
};
[5838] Fix | Delete
}
[5839] Fix | Delete
return {
[5840] Fix | Delete
name: component,
[5841] Fix | Delete
pos: 0
[5842] Fix | Delete
};
[5843] Fix | Delete
});
[5844] Fix | Delete
}
[5845] Fix | Delete
function escapePDFName(str) {
[5846] Fix | Delete
const buffer = [];
[5847] Fix | Delete
let start = 0;
[5848] Fix | Delete
for (let i = 0, ii = str.length; i < ii; i++) {
[5849] Fix | Delete
const char = str.charCodeAt(i);
[5850] Fix | Delete
if (char < 0x21 || char > 0x7e || char === 0x23 || char === 0x28 || char === 0x29 || char === 0x3c || char === 0x3e || char === 0x5b || char === 0x5d || char === 0x7b || char === 0x7d || char === 0x2f || char === 0x25) {
[5851] Fix | Delete
if (start < i) {
[5852] Fix | Delete
buffer.push(str.substring(start, i));
[5853] Fix | Delete
}
[5854] Fix | Delete
buffer.push(`#${char.toString(16)}`);
[5855] Fix | Delete
start = i + 1;
[5856] Fix | Delete
}
[5857] Fix | Delete
}
[5858] Fix | Delete
if (buffer.length === 0) {
[5859] Fix | Delete
return str;
[5860] Fix | Delete
}
[5861] Fix | Delete
if (start < str.length) {
[5862] Fix | Delete
buffer.push(str.substring(start, str.length));
[5863] Fix | Delete
}
[5864] Fix | Delete
return buffer.join("");
[5865] Fix | Delete
}
[5866] Fix | Delete
function escapeString(str) {
[5867] Fix | Delete
return str.replaceAll(/([()\\\n\r])/g, match => {
[5868] Fix | Delete
if (match === "\n") {
[5869] Fix | Delete
return "\\n";
[5870] Fix | Delete
} else if (match === "\r") {
[5871] Fix | Delete
return "\\r";
[5872] Fix | Delete
}
[5873] Fix | Delete
return `\\${match}`;
[5874] Fix | Delete
});
[5875] Fix | Delete
}
[5876] Fix | Delete
function _collectJS(entry, xref, list, parents) {
[5877] Fix | Delete
if (!entry) {
[5878] Fix | Delete
return;
[5879] Fix | Delete
}
[5880] Fix | Delete
let parent = null;
[5881] Fix | Delete
if (entry instanceof Ref) {
[5882] Fix | Delete
if (parents.has(entry)) {
[5883] Fix | Delete
return;
[5884] Fix | Delete
}
[5885] Fix | Delete
parent = entry;
[5886] Fix | Delete
parents.put(parent);
[5887] Fix | Delete
entry = xref.fetch(entry);
[5888] Fix | Delete
}
[5889] Fix | Delete
if (Array.isArray(entry)) {
[5890] Fix | Delete
for (const element of entry) {
[5891] Fix | Delete
_collectJS(element, xref, list, parents);
[5892] Fix | Delete
}
[5893] Fix | Delete
} else if (entry instanceof Dict) {
[5894] Fix | Delete
if (isName(entry.get("S"), "JavaScript")) {
[5895] Fix | Delete
const js = entry.get("JS");
[5896] Fix | Delete
let code;
[5897] Fix | Delete
if (js instanceof BaseStream) {
[5898] Fix | Delete
code = js.getString();
[5899] Fix | Delete
} else if (typeof js === "string") {
[5900] Fix | Delete
code = js;
[5901] Fix | Delete
}
[5902] Fix | Delete
code &&= stringToPDFString(code).replaceAll("\x00", "");
[5903] Fix | Delete
if (code) {
[5904] Fix | Delete
list.push(code);
[5905] Fix | Delete
}
[5906] Fix | Delete
}
[5907] Fix | Delete
_collectJS(entry.getRaw("Next"), xref, list, parents);
[5908] Fix | Delete
}
[5909] Fix | Delete
if (parent) {
[5910] Fix | Delete
parents.remove(parent);
[5911] Fix | Delete
}
[5912] Fix | Delete
}
[5913] Fix | Delete
function collectActions(xref, dict, eventType) {
[5914] Fix | Delete
const actions = Object.create(null);
[5915] Fix | Delete
const additionalActionsDicts = getInheritableProperty({
[5916] Fix | Delete
dict,
[5917] Fix | Delete
key: "AA",
[5918] Fix | Delete
stopWhenFound: false
[5919] Fix | Delete
});
[5920] Fix | Delete
if (additionalActionsDicts) {
[5921] Fix | Delete
for (let i = additionalActionsDicts.length - 1; i >= 0; i--) {
[5922] Fix | Delete
const additionalActions = additionalActionsDicts[i];
[5923] Fix | Delete
if (!(additionalActions instanceof Dict)) {
[5924] Fix | Delete
continue;
[5925] Fix | Delete
}
[5926] Fix | Delete
for (const key of additionalActions.getKeys()) {
[5927] Fix | Delete
const action = eventType[key];
[5928] Fix | Delete
if (!action) {
[5929] Fix | Delete
continue;
[5930] Fix | Delete
}
[5931] Fix | Delete
const actionDict = additionalActions.getRaw(key);
[5932] Fix | Delete
const parents = new RefSet();
[5933] Fix | Delete
const list = [];
[5934] Fix | Delete
_collectJS(actionDict, xref, list, parents);
[5935] Fix | Delete
if (list.length > 0) {
[5936] Fix | Delete
actions[action] = list;
[5937] Fix | Delete
}
[5938] Fix | Delete
}
[5939] Fix | Delete
}
[5940] Fix | Delete
}
[5941] Fix | Delete
if (dict.has("A")) {
[5942] Fix | Delete
const actionDict = dict.get("A");
[5943] Fix | Delete
const parents = new RefSet();
[5944] Fix | Delete
const list = [];
[5945] Fix | Delete
_collectJS(actionDict, xref, list, parents);
[5946] Fix | Delete
if (list.length > 0) {
[5947] Fix | Delete
actions.Action = list;
[5948] Fix | Delete
}
[5949] Fix | Delete
}
[5950] Fix | Delete
return objectSize(actions) > 0 ? actions : null;
[5951] Fix | Delete
}
[5952] Fix | Delete
const XMLEntities = {
[5953] Fix | Delete
0x3c: "&lt;",
[5954] Fix | Delete
0x3e: "&gt;",
[5955] Fix | Delete
0x26: "&amp;",
[5956] Fix | Delete
0x22: "&quot;",
[5957] Fix | Delete
0x27: "&apos;"
[5958] Fix | Delete
};
[5959] Fix | Delete
function* codePointIter(str) {
[5960] Fix | Delete
for (let i = 0, ii = str.length; i < ii; i++) {
[5961] Fix | Delete
const char = str.codePointAt(i);
[5962] Fix | Delete
if (char > 0xd7ff && (char < 0xe000 || char > 0xfffd)) {
[5963] Fix | Delete
i++;
[5964] Fix | Delete
}
[5965] Fix | Delete
yield char;
[5966] Fix | Delete
}
[5967] Fix | Delete
}
[5968] Fix | Delete
function encodeToXmlString(str) {
[5969] Fix | Delete
const buffer = [];
[5970] Fix | Delete
let start = 0;
[5971] Fix | Delete
for (let i = 0, ii = str.length; i < ii; i++) {
[5972] Fix | Delete
const char = str.codePointAt(i);
[5973] Fix | Delete
if (0x20 <= char && char <= 0x7e) {
[5974] Fix | Delete
const entity = XMLEntities[char];
[5975] Fix | Delete
if (entity) {
[5976] Fix | Delete
if (start < i) {
[5977] Fix | Delete
buffer.push(str.substring(start, i));
[5978] Fix | Delete
}
[5979] Fix | Delete
buffer.push(entity);
[5980] Fix | Delete
start = i + 1;
[5981] Fix | Delete
}
[5982] Fix | Delete
} else {
[5983] Fix | Delete
if (start < i) {
[5984] Fix | Delete
buffer.push(str.substring(start, i));
[5985] Fix | Delete
}
[5986] Fix | Delete
buffer.push(`&#x${char.toString(16).toUpperCase()};`);
[5987] Fix | Delete
if (char > 0xd7ff && (char < 0xe000 || char > 0xfffd)) {
[5988] Fix | Delete
i++;
[5989] Fix | Delete
}
[5990] Fix | Delete
start = i + 1;
[5991] Fix | Delete
}
[5992] Fix | Delete
}
[5993] Fix | Delete
if (buffer.length === 0) {
[5994] Fix | Delete
return str;
[5995] Fix | Delete
}
[5996] Fix | Delete
if (start < str.length) {
[5997] Fix | Delete
buffer.push(str.substring(start, str.length));
[5998] Fix | Delete
}
[5999] Fix | Delete
It is recommended that you Edit text format, this type of Fix handles quite a lot in one request
Function