{"version":3,"file":"pdf.js","mappings":"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","sources":["webpack://pdfjs-dist/build/pdf/webpack/universalModuleDefinition","webpack://pdfjs-dist/build/pdf/src/display/display_utils.js","webpack://pdfjs-dist/build/pdf/src/shared/util.js","webpack://pdfjs-dist/build/pdf/src/shared/compatibility.js","webpack://pdfjs-dist/build/pdf/src/shared/is_node.js","webpack://pdfjs-dist/build/pdf/src/display/base_factory.js","webpack://pdfjs-dist/build/pdf/src/display/api.js","webpack://pdfjs-dist/build/pdf/src/display/font_loader.js","webpack://pdfjs-dist/build/pdf/src/display/node_utils.js","webpack://pdfjs-dist/build/pdf/src/display/annotation_storage.js","webpack://pdfjs-dist/build/pdf/src/display/canvas.js","webpack://pdfjs-dist/build/pdf/src/display/pattern_helper.js","webpack://pdfjs-dist/build/pdf/src/display/worker_options.js","webpack://pdfjs-dist/build/pdf/src/shared/message_handler.js","webpack://pdfjs-dist/build/pdf/src/display/metadata.js","webpack://pdfjs-dist/build/pdf/src/display/optional_content_config.js","webpack://pdfjs-dist/build/pdf/src/display/transport_stream.js","webpack://pdfjs-dist/build/pdf/src/display/xfa_text.js","webpack://pdfjs-dist/build/pdf/src/display/annotation_layer.js","webpack://pdfjs-dist/build/pdf/src/shared/scripting_utils.js","webpack://pdfjs-dist/build/pdf/src/display/xfa_layer.js","webpack://pdfjs-dist/build/pdf/src/display/text_layer.js","webpack://pdfjs-dist/build/pdf/src/display/svg.js","webpack://pdfjs-dist/build/pdf/src/display/node_stream.js","webpack://pdfjs-dist/build/pdf/src/display/network_utils.js","webpack://pdfjs-dist/build/pdf/src/display/content_disposition.js","webpack://pdfjs-dist/build/pdf/src/display/network.js","webpack://pdfjs-dist/build/pdf/src/display/fetch_stream.js","webpack://pdfjs-dist/build/pdf/webpack/bootstrap","webpack://pdfjs-dist/build/pdf/src/pdf.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"pdfjs-dist/build/pdf\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"pdfjs-dist/build/pdf\"] = factory();\n\telse\n\t\troot[\"pdfjs-dist/build/pdf\"] = factory();\n})(this, function() {\nreturn ","/* Copyright 2015 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n assert,\n BaseException,\n isString,\n removeNullCharacters,\n shadow,\n stringToBytes,\n Util,\n warn,\n} from \"../shared/util.js\";\nimport {\n BaseCanvasFactory,\n BaseCMapReaderFactory,\n BaseStandardFontDataFactory,\n BaseSVGFactory,\n} from \"./base_factory.js\";\n\nconst DEFAULT_LINK_REL = \"noopener noreferrer nofollow\";\nconst SVG_NS = \"http://www.w3.org/2000/svg\";\n\nconst PixelsPerInch = {\n CSS: 96.0,\n PDF: 72.0,\n\n /** @type {number} */\n get PDF_TO_CSS_UNITS() {\n return shadow(this, \"PDF_TO_CSS_UNITS\", this.CSS / this.PDF);\n },\n};\n\nclass DOMCanvasFactory extends BaseCanvasFactory {\n constructor({ ownerDocument = globalThis.document } = {}) {\n super();\n this._document = ownerDocument;\n }\n\n _createCanvas(width, height) {\n const canvas = this._document.createElement(\"canvas\");\n canvas.width = width;\n canvas.height = height;\n return canvas;\n }\n}\n\nasync function fetchData(url, asTypedArray = false) {\n if (\n (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"MOZCENTRAL\")) ||\n isValidFetchUrl(url, document.baseURI)\n ) {\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error(response.statusText);\n }\n return asTypedArray\n ? new Uint8Array(await response.arrayBuffer())\n : stringToBytes(await response.text());\n }\n\n // The Fetch API is not supported.\n return new Promise((resolve, reject) => {\n const request = new XMLHttpRequest();\n request.open(\"GET\", url, /* asTypedArray = */ true);\n\n if (asTypedArray) {\n request.responseType = \"arraybuffer\";\n }\n request.onreadystatechange = () => {\n if (request.readyState !== XMLHttpRequest.DONE) {\n return;\n }\n if (request.status === 200 || request.status === 0) {\n let data;\n if (asTypedArray && request.response) {\n data = new Uint8Array(request.response);\n } else if (!asTypedArray && request.responseText) {\n data = stringToBytes(request.responseText);\n }\n if (data) {\n resolve(data);\n return;\n }\n }\n reject(new Error(request.statusText));\n };\n\n request.send(null);\n });\n}\n\nclass DOMCMapReaderFactory extends BaseCMapReaderFactory {\n _fetchData(url, compressionType) {\n return fetchData(url, /* asTypedArray = */ this.isCompressed).then(data => {\n return { cMapData: data, compressionType };\n });\n }\n}\n\nclass DOMStandardFontDataFactory extends BaseStandardFontDataFactory {\n _fetchData(url) {\n return fetchData(url, /* asTypedArray = */ true);\n }\n}\n\nclass DOMSVGFactory extends BaseSVGFactory {\n _createSVG(type) {\n return document.createElementNS(SVG_NS, type);\n }\n}\n\n/**\n * @typedef {Object} PageViewportParameters\n * @property {Array} viewBox - The xMin, yMin, xMax and\n * yMax coordinates.\n * @property {number} scale - The scale of the viewport.\n * @property {number} rotation - The rotation, in degrees, of the viewport.\n * @property {number} [offsetX] - The horizontal, i.e. x-axis, offset. The\n * default value is `0`.\n * @property {number} [offsetY] - The vertical, i.e. y-axis, offset. The\n * default value is `0`.\n * @property {boolean} [dontFlip] - If true, the y-axis will not be flipped.\n * The default value is `false`.\n */\n\n/**\n * @typedef {Object} PageViewportCloneParameters\n * @property {number} [scale] - The scale, overriding the one in the cloned\n * viewport. The default value is `this.scale`.\n * @property {number} [rotation] - The rotation, in degrees, overriding the one\n * in the cloned viewport. The default value is `this.rotation`.\n * @property {number} [offsetX] - The horizontal, i.e. x-axis, offset.\n * The default value is `this.offsetX`.\n * @property {number} [offsetY] - The vertical, i.e. y-axis, offset.\n * The default value is `this.offsetY`.\n * @property {boolean} [dontFlip] - If true, the x-axis will not be flipped.\n * The default value is `false`.\n */\n\n/**\n * PDF page viewport created based on scale, rotation and offset.\n */\nclass PageViewport {\n /**\n * @param {PageViewportParameters}\n */\n constructor({\n viewBox,\n scale,\n rotation,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false,\n }) {\n this.viewBox = viewBox;\n this.scale = scale;\n this.rotation = rotation;\n this.offsetX = offsetX;\n this.offsetY = offsetY;\n\n // creating transform to convert pdf coordinate system to the normal\n // canvas like coordinates taking in account scale and rotation\n const centerX = (viewBox[2] + viewBox[0]) / 2;\n const centerY = (viewBox[3] + viewBox[1]) / 2;\n let rotateA, rotateB, rotateC, rotateD;\n // Normalize the rotation, by clamping it to the [0, 360) range.\n rotation %= 360;\n if (rotation < 0) {\n rotation += 360;\n }\n switch (rotation) {\n case 180:\n rotateA = -1;\n rotateB = 0;\n rotateC = 0;\n rotateD = 1;\n break;\n case 90:\n rotateA = 0;\n rotateB = 1;\n rotateC = 1;\n rotateD = 0;\n break;\n case 270:\n rotateA = 0;\n rotateB = -1;\n rotateC = -1;\n rotateD = 0;\n break;\n case 0:\n rotateA = 1;\n rotateB = 0;\n rotateC = 0;\n rotateD = -1;\n break;\n default:\n throw new Error(\n \"PageViewport: Invalid rotation, must be a multiple of 90 degrees.\"\n );\n }\n\n if (dontFlip) {\n rotateC = -rotateC;\n rotateD = -rotateD;\n }\n\n let offsetCanvasX, offsetCanvasY;\n let width, height;\n if (rotateA === 0) {\n offsetCanvasX = Math.abs(centerY - viewBox[1]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerX - viewBox[0]) * scale + offsetY;\n width = Math.abs(viewBox[3] - viewBox[1]) * scale;\n height = Math.abs(viewBox[2] - viewBox[0]) * scale;\n } else {\n offsetCanvasX = Math.abs(centerX - viewBox[0]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerY - viewBox[1]) * scale + offsetY;\n width = Math.abs(viewBox[2] - viewBox[0]) * scale;\n height = Math.abs(viewBox[3] - viewBox[1]) * scale;\n }\n // creating transform for the following operations:\n // translate(-centerX, -centerY), rotate and flip vertically,\n // scale, and translate(offsetCanvasX, offsetCanvasY)\n this.transform = [\n rotateA * scale,\n rotateB * scale,\n rotateC * scale,\n rotateD * scale,\n offsetCanvasX - rotateA * scale * centerX - rotateC * scale * centerY,\n offsetCanvasY - rotateB * scale * centerX - rotateD * scale * centerY,\n ];\n\n this.width = width;\n this.height = height;\n }\n\n /**\n * Clones viewport, with optional additional properties.\n * @param {PageViewportCloneParameters} [params]\n * @returns {PageViewport} Cloned viewport.\n */\n clone({\n scale = this.scale,\n rotation = this.rotation,\n offsetX = this.offsetX,\n offsetY = this.offsetY,\n dontFlip = false,\n } = {}) {\n return new PageViewport({\n viewBox: this.viewBox.slice(),\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip,\n });\n }\n\n /**\n * Converts PDF point to the viewport coordinates. For examples, useful for\n * converting PDF location into canvas pixel coordinates.\n * @param {number} x - The x-coordinate.\n * @param {number} y - The y-coordinate.\n * @returns {Object} Object containing `x` and `y` properties of the\n * point in the viewport coordinate space.\n * @see {@link convertToPdfPoint}\n * @see {@link convertToViewportRectangle}\n */\n convertToViewportPoint(x, y) {\n return Util.applyTransform([x, y], this.transform);\n }\n\n /**\n * Converts PDF rectangle to the viewport coordinates.\n * @param {Array} rect - The xMin, yMin, xMax and yMax coordinates.\n * @returns {Array} Array containing corresponding coordinates of the\n * rectangle in the viewport coordinate space.\n * @see {@link convertToViewportPoint}\n */\n convertToViewportRectangle(rect) {\n const topLeft = Util.applyTransform([rect[0], rect[1]], this.transform);\n const bottomRight = Util.applyTransform([rect[2], rect[3]], this.transform);\n return [topLeft[0], topLeft[1], bottomRight[0], bottomRight[1]];\n }\n\n /**\n * Converts viewport coordinates to the PDF location. For examples, useful\n * for converting canvas pixel location into PDF one.\n * @param {number} x - The x-coordinate.\n * @param {number} y - The y-coordinate.\n * @returns {Object} Object containing `x` and `y` properties of the\n * point in the PDF coordinate space.\n * @see {@link convertToViewportPoint}\n */\n convertToPdfPoint(x, y) {\n return Util.applyInverseTransform([x, y], this.transform);\n }\n}\n\nclass RenderingCancelledException extends BaseException {\n constructor(msg, type) {\n super(msg, \"RenderingCancelledException\");\n this.type = type;\n }\n}\n\nconst LinkTarget = {\n NONE: 0, // Default value.\n SELF: 1,\n BLANK: 2,\n PARENT: 3,\n TOP: 4,\n};\n\n/**\n * @typedef ExternalLinkParameters\n * @typedef {Object} ExternalLinkParameters\n * @property {string} url - An absolute URL.\n * @property {LinkTarget} [target] - The link target. The default value is\n * `LinkTarget.NONE`.\n * @property {string} [rel] - The link relationship. The default value is\n * `DEFAULT_LINK_REL`.\n * @property {boolean} [enabled] - Whether the link should be enabled. The\n * default value is true.\n */\n\n/**\n * Adds various attributes (href, title, target, rel) to hyperlinks.\n * @param {HTMLAnchorElement} link - The link element.\n * @param {ExternalLinkParameters} params\n */\nfunction addLinkAttributes(link, { url, target, rel, enabled = true } = {}) {\n assert(\n url && typeof url === \"string\",\n 'addLinkAttributes: A valid \"url\" parameter must provided.'\n );\n\n const urlNullRemoved = removeNullCharacters(url);\n if (enabled) {\n link.href = link.title = urlNullRemoved;\n } else {\n link.href = \"\";\n link.title = `Disabled: ${urlNullRemoved}`;\n link.onclick = () => {\n return false;\n };\n }\n\n let targetStr = \"\"; // LinkTarget.NONE\n switch (target) {\n case LinkTarget.NONE:\n break;\n case LinkTarget.SELF:\n targetStr = \"_self\";\n break;\n case LinkTarget.BLANK:\n targetStr = \"_blank\";\n break;\n case LinkTarget.PARENT:\n targetStr = \"_parent\";\n break;\n case LinkTarget.TOP:\n targetStr = \"_top\";\n break;\n }\n link.target = targetStr;\n\n link.rel = typeof rel === \"string\" ? rel : DEFAULT_LINK_REL;\n}\n\nfunction isDataScheme(url) {\n const ii = url.length;\n let i = 0;\n while (i < ii && url[i].trim() === \"\") {\n i++;\n }\n return url.substring(i, i + 5).toLowerCase() === \"data:\";\n}\n\nfunction isPdfFile(filename) {\n return typeof filename === \"string\" && /\\.pdf$/i.test(filename);\n}\n\n/**\n * Gets the filename from a given URL.\n * @param {string} url\n * @returns {string}\n */\nfunction getFilenameFromUrl(url) {\n const anchor = url.indexOf(\"#\");\n const query = url.indexOf(\"?\");\n const end = Math.min(\n anchor > 0 ? anchor : url.length,\n query > 0 ? query : url.length\n );\n return url.substring(url.lastIndexOf(\"/\", end) + 1, end);\n}\n\n/**\n * Returns the filename or guessed filename from the url (see issue 3455).\n * @param {string} url - The original PDF location.\n * @param {string} defaultFilename - The value returned if the filename is\n * unknown, or the protocol is unsupported.\n * @returns {string} Guessed PDF filename.\n */\nfunction getPdfFilenameFromUrl(url, defaultFilename = \"document.pdf\") {\n if (typeof url !== \"string\") {\n return defaultFilename;\n }\n if (isDataScheme(url)) {\n warn('getPdfFilenameFromUrl: ignore \"data:\"-URL for performance reasons.');\n return defaultFilename;\n }\n const reURI = /^(?:(?:[^:]+:)?\\/\\/[^/]+)?([^?#]*)(\\?[^#]*)?(#.*)?$/;\n // SCHEME HOST 1.PATH 2.QUERY 3.REF\n // Pattern to get last matching NAME.pdf\n const reFilename = /[^/?#=]+\\.pdf\\b(?!.*\\.pdf\\b)/i;\n const splitURI = reURI.exec(url);\n let suggestedFilename =\n reFilename.exec(splitURI[1]) ||\n reFilename.exec(splitURI[2]) ||\n reFilename.exec(splitURI[3]);\n if (suggestedFilename) {\n suggestedFilename = suggestedFilename[0];\n if (suggestedFilename.includes(\"%\")) {\n // URL-encoded %2Fpath%2Fto%2Ffile.pdf should be file.pdf\n try {\n suggestedFilename = reFilename.exec(\n decodeURIComponent(suggestedFilename)\n )[0];\n } catch (ex) {\n // Possible (extremely rare) errors:\n // URIError \"Malformed URI\", e.g. for \"%AA.pdf\"\n // TypeError \"null has no properties\", e.g. for \"%2F.pdf\"\n }\n }\n }\n return suggestedFilename || defaultFilename;\n}\n\nclass StatTimer {\n constructor() {\n this.started = Object.create(null);\n this.times = [];\n }\n\n time(name) {\n if (name in this.started) {\n warn(`Timer is already running for ${name}`);\n }\n this.started[name] = Date.now();\n }\n\n timeEnd(name) {\n if (!(name in this.started)) {\n warn(`Timer has not been started for ${name}`);\n }\n this.times.push({\n name,\n start: this.started[name],\n end: Date.now(),\n });\n // Remove timer from started so it can be called again.\n delete this.started[name];\n }\n\n toString() {\n // Find the longest name for padding purposes.\n const outBuf = [];\n let longest = 0;\n for (const time of this.times) {\n const name = time.name;\n if (name.length > longest) {\n longest = name.length;\n }\n }\n for (const time of this.times) {\n const duration = time.end - time.start;\n outBuf.push(`${time.name.padEnd(longest)} ${duration}ms\\n`);\n }\n return outBuf.join(\"\");\n }\n}\n\nfunction isValidFetchUrl(url, baseUrl) {\n try {\n const { protocol } = baseUrl ? new URL(url, baseUrl) : new URL(url);\n // The Fetch API only supports the http/https protocols, and not file/ftp.\n return protocol === \"http:\" || protocol === \"https:\";\n } catch (ex) {\n return false; // `new URL()` will throw on incorrect data.\n }\n}\n\n/**\n * @param {string} src\n * @param {boolean} [removeScriptElement]\n * @returns {Promise}\n */\nfunction loadScript(src, removeScriptElement = false) {\n return new Promise((resolve, reject) => {\n const script = document.createElement(\"script\");\n script.src = src;\n\n script.onload = function (evt) {\n if (removeScriptElement) {\n script.remove();\n }\n resolve(evt);\n };\n script.onerror = function () {\n reject(new Error(`Cannot load script at: ${script.src}`));\n };\n (document.head || document.documentElement).appendChild(script);\n });\n}\n\n// Deprecated API function -- display regardless of the `verbosity` setting.\nfunction deprecated(details) {\n console.log(\"Deprecated API usage: \" + details);\n}\n\nlet pdfDateStringRegex;\n\nclass PDFDateString {\n /**\n * Convert a PDF date string to a JavaScript `Date` object.\n *\n * The PDF date string format is described in section 7.9.4 of the official\n * PDF 32000-1:2008 specification. However, in the PDF 1.7 reference (sixth\n * edition) Adobe describes the same format including a trailing apostrophe.\n * This syntax in incorrect, but Adobe Acrobat creates PDF files that contain\n * them. We ignore all apostrophes as they are not necessary for date parsing.\n *\n * Moreover, Adobe Acrobat doesn't handle changing the date to universal time\n * and doesn't use the user's time zone (effectively ignoring the HH' and mm'\n * parts of the date string).\n *\n * @param {string} input\n * @returns {Date|null}\n */\n static toDateObject(input) {\n if (!input || !isString(input)) {\n return null;\n }\n\n // Lazily initialize the regular expression.\n if (!pdfDateStringRegex) {\n pdfDateStringRegex = new RegExp(\n \"^D:\" + // Prefix (required)\n \"(\\\\d{4})\" + // Year (required)\n \"(\\\\d{2})?\" + // Month (optional)\n \"(\\\\d{2})?\" + // Day (optional)\n \"(\\\\d{2})?\" + // Hour (optional)\n \"(\\\\d{2})?\" + // Minute (optional)\n \"(\\\\d{2})?\" + // Second (optional)\n \"([Z|+|-])?\" + // Universal time relation (optional)\n \"(\\\\d{2})?\" + // Offset hour (optional)\n \"'?\" + // Splitting apostrophe (optional)\n \"(\\\\d{2})?\" + // Offset minute (optional)\n \"'?\" // Trailing apostrophe (optional)\n );\n }\n\n // Optional fields that don't satisfy the requirements from the regular\n // expression (such as incorrect digit counts or numbers that are out of\n // range) will fall back the defaults from the specification.\n const matches = pdfDateStringRegex.exec(input);\n if (!matches) {\n return null;\n }\n\n // JavaScript's `Date` object expects the month to be between 0 and 11\n // instead of 1 and 12, so we have to correct for that.\n const year = parseInt(matches[1], 10);\n let month = parseInt(matches[2], 10);\n month = month >= 1 && month <= 12 ? month - 1 : 0;\n let day = parseInt(matches[3], 10);\n day = day >= 1 && day <= 31 ? day : 1;\n let hour = parseInt(matches[4], 10);\n hour = hour >= 0 && hour <= 23 ? hour : 0;\n let minute = parseInt(matches[5], 10);\n minute = minute >= 0 && minute <= 59 ? minute : 0;\n let second = parseInt(matches[6], 10);\n second = second >= 0 && second <= 59 ? second : 0;\n const universalTimeRelation = matches[7] || \"Z\";\n let offsetHour = parseInt(matches[8], 10);\n offsetHour = offsetHour >= 0 && offsetHour <= 23 ? offsetHour : 0;\n let offsetMinute = parseInt(matches[9], 10) || 0;\n offsetMinute = offsetMinute >= 0 && offsetMinute <= 59 ? offsetMinute : 0;\n\n // Universal time relation 'Z' means that the local time is equal to the\n // universal time, whereas the relations '+'/'-' indicate that the local\n // time is later respectively earlier than the universal time. Every date\n // is normalized to universal time.\n if (universalTimeRelation === \"-\") {\n hour += offsetHour;\n minute += offsetMinute;\n } else if (universalTimeRelation === \"+\") {\n hour -= offsetHour;\n minute -= offsetMinute;\n }\n\n return new Date(Date.UTC(year, month, day, hour, minute, second));\n }\n}\n\n/**\n * NOTE: This is (mostly) intended to support printing of XFA forms.\n */\nfunction getXfaPageViewport(xfaPage, { scale = 1, rotation = 0 }) {\n const { width, height } = xfaPage.attributes.style;\n const viewBox = [0, 0, parseInt(width), parseInt(height)];\n\n return new PageViewport({\n viewBox,\n scale,\n rotation,\n });\n}\n\nexport {\n addLinkAttributes,\n deprecated,\n DOMCanvasFactory,\n DOMCMapReaderFactory,\n DOMStandardFontDataFactory,\n DOMSVGFactory,\n getFilenameFromUrl,\n getPdfFilenameFromUrl,\n getXfaPageViewport,\n isDataScheme,\n isPdfFile,\n isValidFetchUrl,\n LinkTarget,\n loadScript,\n PageViewport,\n PDFDateString,\n PixelsPerInch,\n RenderingCancelledException,\n StatTimer,\n};\n","/* Copyright 2012 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport \"./compatibility.js\";\n\nconst IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\nconst FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\n\n/**\n * Refer to the `WorkerTransport.getRenderingIntent`-method in the API, to see\n * how these flags are being used:\n * - ANY, DISPLAY, and PRINT are the normal rendering intents, note the\n * `PDFPageProxy.{render, getOperatorList, getAnnotations}`-methods.\n * - ANNOTATIONS_FORMS, ANNOTATIONS_STORAGE, ANNOTATIONS_DISABLE control which\n * annotations are rendered onto the canvas (i.e. by being included in the\n * operatorList), note the `PDFPageProxy.{render, getOperatorList}`-methods\n * and their `annotationMode`-option.\n * - OPLIST is used with the `PDFPageProxy.getOperatorList`-method, note the\n * `OperatorList`-constructor (on the worker-thread).\n */\nconst RenderingIntentFlag = {\n ANY: 0x01,\n DISPLAY: 0x02,\n PRINT: 0x04,\n ANNOTATIONS_FORMS: 0x10,\n ANNOTATIONS_STORAGE: 0x20,\n ANNOTATIONS_DISABLE: 0x40,\n OPLIST: 0x100,\n};\n\nconst AnnotationMode = {\n DISABLE: 0,\n ENABLE: 1,\n ENABLE_FORMS: 2,\n ENABLE_STORAGE: 3,\n};\n\n// Permission flags from Table 22, Section 7.6.3.2 of the PDF specification.\nconst PermissionFlag = {\n PRINT: 0x04,\n MODIFY_CONTENTS: 0x08,\n COPY: 0x10,\n MODIFY_ANNOTATIONS: 0x20,\n FILL_INTERACTIVE_FORMS: 0x100,\n COPY_FOR_ACCESSIBILITY: 0x200,\n ASSEMBLE: 0x400,\n PRINT_HIGH_QUALITY: 0x800,\n};\n\nconst TextRenderingMode = {\n FILL: 0,\n STROKE: 1,\n FILL_STROKE: 2,\n INVISIBLE: 3,\n FILL_ADD_TO_PATH: 4,\n STROKE_ADD_TO_PATH: 5,\n FILL_STROKE_ADD_TO_PATH: 6,\n ADD_TO_PATH: 7,\n FILL_STROKE_MASK: 3,\n ADD_TO_PATH_FLAG: 4,\n};\n\nconst ImageKind = {\n GRAYSCALE_1BPP: 1,\n RGB_24BPP: 2,\n RGBA_32BPP: 3,\n};\n\nconst AnnotationType = {\n TEXT: 1,\n LINK: 2,\n FREETEXT: 3,\n LINE: 4,\n SQUARE: 5,\n CIRCLE: 6,\n POLYGON: 7,\n POLYLINE: 8,\n HIGHLIGHT: 9,\n UNDERLINE: 10,\n SQUIGGLY: 11,\n STRIKEOUT: 12,\n STAMP: 13,\n CARET: 14,\n INK: 15,\n POPUP: 16,\n FILEATTACHMENT: 17,\n SOUND: 18,\n MOVIE: 19,\n WIDGET: 20,\n SCREEN: 21,\n PRINTERMARK: 22,\n TRAPNET: 23,\n WATERMARK: 24,\n THREED: 25,\n REDACT: 26,\n};\n\nconst AnnotationStateModelType = {\n MARKED: \"Marked\",\n REVIEW: \"Review\",\n};\n\nconst AnnotationMarkedState = {\n MARKED: \"Marked\",\n UNMARKED: \"Unmarked\",\n};\n\nconst AnnotationReviewState = {\n ACCEPTED: \"Accepted\",\n REJECTED: \"Rejected\",\n CANCELLED: \"Cancelled\",\n COMPLETED: \"Completed\",\n NONE: \"None\",\n};\n\nconst AnnotationReplyType = {\n GROUP: \"Group\",\n REPLY: \"R\",\n};\n\nconst AnnotationFlag = {\n INVISIBLE: 0x01,\n HIDDEN: 0x02,\n PRINT: 0x04,\n NOZOOM: 0x08,\n NOROTATE: 0x10,\n NOVIEW: 0x20,\n READONLY: 0x40,\n LOCKED: 0x80,\n TOGGLENOVIEW: 0x100,\n LOCKEDCONTENTS: 0x200,\n};\n\nconst AnnotationFieldFlag = {\n READONLY: 0x0000001,\n REQUIRED: 0x0000002,\n NOEXPORT: 0x0000004,\n MULTILINE: 0x0001000,\n PASSWORD: 0x0002000,\n NOTOGGLETOOFF: 0x0004000,\n RADIO: 0x0008000,\n PUSHBUTTON: 0x0010000,\n COMBO: 0x0020000,\n EDIT: 0x0040000,\n SORT: 0x0080000,\n FILESELECT: 0x0100000,\n MULTISELECT: 0x0200000,\n DONOTSPELLCHECK: 0x0400000,\n DONOTSCROLL: 0x0800000,\n COMB: 0x1000000,\n RICHTEXT: 0x2000000,\n RADIOSINUNISON: 0x2000000,\n COMMITONSELCHANGE: 0x4000000,\n};\n\nconst AnnotationBorderStyleType = {\n SOLID: 1,\n DASHED: 2,\n BEVELED: 3,\n INSET: 4,\n UNDERLINE: 5,\n};\n\nconst AnnotationActionEventType = {\n E: \"Mouse Enter\",\n X: \"Mouse Exit\",\n D: \"Mouse Down\",\n U: \"Mouse Up\",\n Fo: \"Focus\",\n Bl: \"Blur\",\n PO: \"PageOpen\",\n PC: \"PageClose\",\n PV: \"PageVisible\",\n PI: \"PageInvisible\",\n K: \"Keystroke\",\n F: \"Format\",\n V: \"Validate\",\n C: \"Calculate\",\n};\n\nconst DocumentActionEventType = {\n WC: \"WillClose\",\n WS: \"WillSave\",\n DS: \"DidSave\",\n WP: \"WillPrint\",\n DP: \"DidPrint\",\n};\n\nconst PageActionEventType = {\n O: \"PageOpen\",\n C: \"PageClose\",\n};\n\nconst StreamType = {\n UNKNOWN: \"UNKNOWN\",\n FLATE: \"FLATE\",\n LZW: \"LZW\",\n DCT: \"DCT\",\n JPX: \"JPX\",\n JBIG: \"JBIG\",\n A85: \"A85\",\n AHX: \"AHX\",\n CCF: \"CCF\",\n RLX: \"RLX\", // PDF short name is 'RL', but telemetry requires three chars.\n};\n\nconst FontType = {\n UNKNOWN: \"UNKNOWN\",\n TYPE1: \"TYPE1\",\n TYPE1STANDARD: \"TYPE1STANDARD\",\n TYPE1C: \"TYPE1C\",\n CIDFONTTYPE0: \"CIDFONTTYPE0\",\n CIDFONTTYPE0C: \"CIDFONTTYPE0C\",\n TRUETYPE: \"TRUETYPE\",\n CIDFONTTYPE2: \"CIDFONTTYPE2\",\n TYPE3: \"TYPE3\",\n OPENTYPE: \"OPENTYPE\",\n TYPE0: \"TYPE0\",\n MMTYPE1: \"MMTYPE1\",\n};\n\nconst VerbosityLevel = {\n ERRORS: 0,\n WARNINGS: 1,\n INFOS: 5,\n};\n\nconst CMapCompressionType = {\n NONE: 0,\n BINARY: 1,\n STREAM: 2,\n};\n\n// All the possible operations for an operator list.\nconst OPS = {\n // Intentionally start from 1 so it is easy to spot bad operators that will be\n // 0's.\n dependency: 1,\n setLineWidth: 2,\n setLineCap: 3,\n setLineJoin: 4,\n setMiterLimit: 5,\n setDash: 6,\n setRenderingIntent: 7,\n setFlatness: 8,\n setGState: 9,\n save: 10,\n restore: 11,\n transform: 12,\n moveTo: 13,\n lineTo: 14,\n curveTo: 15,\n curveTo2: 16,\n curveTo3: 17,\n closePath: 18,\n rectangle: 19,\n stroke: 20,\n closeStroke: 21,\n fill: 22,\n eoFill: 23,\n fillStroke: 24,\n eoFillStroke: 25,\n closeFillStroke: 26,\n closeEOFillStroke: 27,\n endPath: 28,\n clip: 29,\n eoClip: 30,\n beginText: 31,\n endText: 32,\n setCharSpacing: 33,\n setWordSpacing: 34,\n setHScale: 35,\n setLeading: 36,\n setFont: 37,\n setTextRenderingMode: 38,\n setTextRise: 39,\n moveText: 40,\n setLeadingMoveText: 41,\n setTextMatrix: 42,\n nextLine: 43,\n showText: 44,\n showSpacedText: 45,\n nextLineShowText: 46,\n nextLineSetSpacingShowText: 47,\n setCharWidth: 48,\n setCharWidthAndBounds: 49,\n setStrokeColorSpace: 50,\n setFillColorSpace: 51,\n setStrokeColor: 52,\n setStrokeColorN: 53,\n setFillColor: 54,\n setFillColorN: 55,\n setStrokeGray: 56,\n setFillGray: 57,\n setStrokeRGBColor: 58,\n setFillRGBColor: 59,\n setStrokeCMYKColor: 60,\n setFillCMYKColor: 61,\n shadingFill: 62,\n beginInlineImage: 63,\n beginImageData: 64,\n endInlineImage: 65,\n paintXObject: 66,\n markPoint: 67,\n markPointProps: 68,\n beginMarkedContent: 69,\n beginMarkedContentProps: 70,\n endMarkedContent: 71,\n beginCompat: 72,\n endCompat: 73,\n paintFormXObjectBegin: 74,\n paintFormXObjectEnd: 75,\n beginGroup: 76,\n endGroup: 77,\n beginAnnotations: 78,\n endAnnotations: 79,\n beginAnnotation: 80,\n endAnnotation: 81,\n /** @deprecated unused */\n paintJpegXObject: 82,\n paintImageMaskXObject: 83,\n paintImageMaskXObjectGroup: 84,\n paintImageXObject: 85,\n paintInlineImageXObject: 86,\n paintInlineImageXObjectGroup: 87,\n paintImageXObjectRepeat: 88,\n paintImageMaskXObjectRepeat: 89,\n paintSolidColorImageMask: 90,\n constructPath: 91,\n};\n\nconst UNSUPPORTED_FEATURES = {\n /** @deprecated unused */\n unknown: \"unknown\",\n forms: \"forms\",\n javaScript: \"javaScript\",\n signatures: \"signatures\",\n smask: \"smask\",\n shadingPattern: \"shadingPattern\",\n /** @deprecated unused */\n font: \"font\",\n errorTilingPattern: \"errorTilingPattern\",\n errorExtGState: \"errorExtGState\",\n errorXObject: \"errorXObject\",\n errorFontLoadType3: \"errorFontLoadType3\",\n errorFontState: \"errorFontState\",\n errorFontMissing: \"errorFontMissing\",\n errorFontTranslate: \"errorFontTranslate\",\n errorColorSpace: \"errorColorSpace\",\n errorOperatorList: \"errorOperatorList\",\n errorFontToUnicode: \"errorFontToUnicode\",\n errorFontLoadNative: \"errorFontLoadNative\",\n errorFontBuildPath: \"errorFontBuildPath\",\n errorFontGetPath: \"errorFontGetPath\",\n errorMarkedContent: \"errorMarkedContent\",\n errorContentSubStream: \"errorContentSubStream\",\n};\n\nconst PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2,\n};\n\nlet verbosity = VerbosityLevel.WARNINGS;\n\nfunction setVerbosityLevel(level) {\n if (Number.isInteger(level)) {\n verbosity = level;\n }\n}\n\nfunction getVerbosityLevel() {\n return verbosity;\n}\n\n// A notice for devs. These are good for things that are helpful to devs, such\n// as warning that Workers were disabled, which is important to devs but not\n// end users.\nfunction info(msg) {\n if (verbosity >= VerbosityLevel.INFOS) {\n console.log(`Info: ${msg}`);\n }\n}\n\n// Non-fatal warnings.\nfunction warn(msg) {\n if (verbosity >= VerbosityLevel.WARNINGS) {\n console.log(`Warning: ${msg}`);\n }\n}\n\nfunction unreachable(msg) {\n throw new Error(msg);\n}\n\nfunction assert(cond, msg) {\n if (!cond) {\n unreachable(msg);\n }\n}\n\n// Checks if URLs have the same origin. For non-HTTP based URLs, returns false.\nfunction isSameOrigin(baseUrl, otherUrl) {\n let base;\n try {\n base = new URL(baseUrl);\n if (!base.origin || base.origin === \"null\") {\n return false; // non-HTTP url\n }\n } catch (e) {\n return false;\n }\n\n const other = new URL(otherUrl, base);\n return base.origin === other.origin;\n}\n\n// Checks if URLs use one of the allowed protocols, e.g. to avoid XSS.\nfunction _isValidProtocol(url) {\n if (!url) {\n return false;\n }\n switch (url.protocol) {\n case \"http:\":\n case \"https:\":\n case \"ftp:\":\n case \"mailto:\":\n case \"tel:\":\n return true;\n default:\n return false;\n }\n}\n\n/**\n * Attempts to create a valid absolute URL.\n *\n * @param {URL|string} url - An absolute, or relative, URL.\n * @param {URL|string} [baseUrl] - An absolute URL.\n * @param {Object} [options]\n * @returns Either a valid {URL}, or `null` otherwise.\n */\nfunction createValidAbsoluteUrl(url, baseUrl = null, options = null) {\n if (!url) {\n return null;\n }\n try {\n if (options && typeof url === \"string\") {\n // Let URLs beginning with \"www.\" default to using the \"http://\" protocol.\n if (options.addDefaultProtocol && url.startsWith(\"www.\")) {\n const dots = url.match(/\\./g);\n // Avoid accidentally matching a *relative* URL pointing to a file named\n // e.g. \"www.pdf\" or similar.\n if (dots && dots.length >= 2) {\n url = `http://${url}`;\n }\n }\n\n // According to ISO 32000-1:2008, section 12.6.4.7, URIs should be encoded\n // in 7-bit ASCII. Some bad PDFs use UTF-8 encoding; see bug 1122280.\n if (options.tryConvertEncoding) {\n try {\n url = stringToUTF8String(url);\n } catch (ex) {}\n }\n }\n\n const absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);\n if (_isValidProtocol(absoluteUrl)) {\n return absoluteUrl;\n }\n } catch (ex) {\n /* `new URL()` will throw on incorrect data. */\n }\n return null;\n}\n\nfunction shadow(obj, prop, value) {\n if (\n typeof PDFJSDev === \"undefined\" ||\n PDFJSDev.test(\"!PRODUCTION || TESTING\")\n ) {\n assert(\n prop in obj,\n `shadow: Property \"${prop && prop.toString()}\" not found in object.`\n );\n }\n Object.defineProperty(obj, prop, {\n value,\n enumerable: true,\n configurable: true,\n writable: false,\n });\n return value;\n}\n\n/**\n * @type {any}\n */\nconst BaseException = (function BaseExceptionClosure() {\n // eslint-disable-next-line no-shadow\n function BaseException(message, name) {\n if (this.constructor === BaseException) {\n unreachable(\"Cannot initialize BaseException.\");\n }\n this.message = message;\n this.name = name;\n }\n BaseException.prototype = new Error();\n BaseException.constructor = BaseException;\n\n return BaseException;\n})();\n\nclass PasswordException extends BaseException {\n constructor(msg, code) {\n super(msg, \"PasswordException\");\n this.code = code;\n }\n}\n\nclass UnknownErrorException extends BaseException {\n constructor(msg, details) {\n super(msg, \"UnknownErrorException\");\n this.details = details;\n }\n}\n\nclass InvalidPDFException extends BaseException {\n constructor(msg) {\n super(msg, \"InvalidPDFException\");\n }\n}\n\nclass MissingPDFException extends BaseException {\n constructor(msg) {\n super(msg, \"MissingPDFException\");\n }\n}\n\nclass UnexpectedResponseException extends BaseException {\n constructor(msg, status) {\n super(msg, \"UnexpectedResponseException\");\n this.status = status;\n }\n}\n\n/**\n * Error caused during parsing PDF data.\n */\nclass FormatError extends BaseException {\n constructor(msg) {\n super(msg, \"FormatError\");\n }\n}\n\n/**\n * Error used to indicate task cancellation.\n */\nclass AbortException extends BaseException {\n constructor(msg) {\n super(msg, \"AbortException\");\n }\n}\n\nconst NullCharactersRegExp = /\\x00+/g;\nconst InvisibleCharactersRegExp = /[\\x01-\\x1F]/g;\n\n/**\n * @param {string} str\n */\nfunction removeNullCharacters(str, replaceInvisible = false) {\n if (typeof str !== \"string\") {\n warn(\"The argument for removeNullCharacters must be a string.\");\n return str;\n }\n if (replaceInvisible) {\n str = str.replace(InvisibleCharactersRegExp, \" \");\n }\n return str.replace(NullCharactersRegExp, \"\");\n}\n\nfunction bytesToString(bytes) {\n assert(\n bytes !== null && typeof bytes === \"object\" && bytes.length !== undefined,\n \"Invalid argument for bytesToString\"\n );\n const length = bytes.length;\n const MAX_ARGUMENT_COUNT = 8192;\n if (length < MAX_ARGUMENT_COUNT) {\n return String.fromCharCode.apply(null, bytes);\n }\n const strBuf = [];\n for (let i = 0; i < length; i += MAX_ARGUMENT_COUNT) {\n const chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length);\n const chunk = bytes.subarray(i, chunkEnd);\n strBuf.push(String.fromCharCode.apply(null, chunk));\n }\n return strBuf.join(\"\");\n}\n\nfunction stringToBytes(str) {\n assert(typeof str === \"string\", \"Invalid argument for stringToBytes\");\n const length = str.length;\n const bytes = new Uint8Array(length);\n for (let i = 0; i < length; ++i) {\n bytes[i] = str.charCodeAt(i) & 0xff;\n }\n return bytes;\n}\n\n/**\n * Gets length of the array (Array, Uint8Array, or string) in bytes.\n * @param {Array|Uint8Array|string} arr\n * @returns {number}\n */\nfunction arrayByteLength(arr) {\n if (arr.length !== undefined) {\n return arr.length;\n }\n assert(arr.byteLength !== undefined, \"arrayByteLength - invalid argument.\");\n return arr.byteLength;\n}\n\n/**\n * Combines array items (arrays) into single Uint8Array object.\n * @param {Array|Uint8Array|string>} arr - the array of the arrays\n * (Array, Uint8Array, or string).\n * @returns {Uint8Array}\n */\nfunction arraysToBytes(arr) {\n const length = arr.length;\n // Shortcut: if first and only item is Uint8Array, return it.\n if (length === 1 && arr[0] instanceof Uint8Array) {\n return arr[0];\n }\n let resultLength = 0;\n for (let i = 0; i < length; i++) {\n resultLength += arrayByteLength(arr[i]);\n }\n let pos = 0;\n const data = new Uint8Array(resultLength);\n for (let i = 0; i < length; i++) {\n let item = arr[i];\n if (!(item instanceof Uint8Array)) {\n if (typeof item === \"string\") {\n item = stringToBytes(item);\n } else {\n item = new Uint8Array(item);\n }\n }\n const itemLength = item.byteLength;\n data.set(item, pos);\n pos += itemLength;\n }\n return data;\n}\n\nfunction string32(value) {\n if (\n typeof PDFJSDev === \"undefined\" ||\n PDFJSDev.test(\"!PRODUCTION || TESTING\")\n ) {\n assert(\n typeof value === \"number\" && Math.abs(value) < 2 ** 32,\n `string32: Unexpected input \"${value}\".`\n );\n }\n return String.fromCharCode(\n (value >> 24) & 0xff,\n (value >> 16) & 0xff,\n (value >> 8) & 0xff,\n value & 0xff\n );\n}\n\nfunction objectSize(obj) {\n return Object.keys(obj).length;\n}\n\n// Ensure that the returned Object has a `null` prototype; hence why\n// `Object.fromEntries(...)` is not used.\nfunction objectFromMap(map) {\n const obj = Object.create(null);\n for (const [key, value] of map) {\n obj[key] = value;\n }\n return obj;\n}\n\n// Checks the endianness of the platform.\nfunction isLittleEndian() {\n const buffer8 = new Uint8Array(4);\n buffer8[0] = 1;\n const view32 = new Uint32Array(buffer8.buffer, 0, 1);\n return view32[0] === 1;\n}\nconst IsLittleEndianCached = {\n get value() {\n return shadow(this, \"value\", isLittleEndian());\n },\n};\n\n// Checks if it's possible to eval JS expressions.\nfunction isEvalSupported() {\n try {\n new Function(\"\"); // eslint-disable-line no-new, no-new-func\n return true;\n } catch (e) {\n return false;\n }\n}\nconst IsEvalSupportedCached = {\n get value() {\n return shadow(this, \"value\", isEvalSupported());\n },\n};\n\nconst hexNumbers = [...Array(256).keys()].map(n =>\n n.toString(16).padStart(2, \"0\")\n);\n\nclass Util {\n static makeHexColor(r, g, b) {\n return `#${hexNumbers[r]}${hexNumbers[g]}${hexNumbers[b]}`;\n }\n\n // Concatenates two transformation matrices together and returns the result.\n static transform(m1, m2) {\n return [\n m1[0] * m2[0] + m1[2] * m2[1],\n m1[1] * m2[0] + m1[3] * m2[1],\n m1[0] * m2[2] + m1[2] * m2[3],\n m1[1] * m2[2] + m1[3] * m2[3],\n m1[0] * m2[4] + m1[2] * m2[5] + m1[4],\n m1[1] * m2[4] + m1[3] * m2[5] + m1[5],\n ];\n }\n\n // For 2d affine transforms\n static applyTransform(p, m) {\n const xt = p[0] * m[0] + p[1] * m[2] + m[4];\n const yt = p[0] * m[1] + p[1] * m[3] + m[5];\n return [xt, yt];\n }\n\n static applyInverseTransform(p, m) {\n const d = m[0] * m[3] - m[1] * m[2];\n const xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d;\n const yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d;\n return [xt, yt];\n }\n\n // Applies the transform to the rectangle and finds the minimum axially\n // aligned bounding box.\n static getAxialAlignedBoundingBox(r, m) {\n const p1 = Util.applyTransform(r, m);\n const p2 = Util.applyTransform(r.slice(2, 4), m);\n const p3 = Util.applyTransform([r[0], r[3]], m);\n const p4 = Util.applyTransform([r[2], r[1]], m);\n return [\n Math.min(p1[0], p2[0], p3[0], p4[0]),\n Math.min(p1[1], p2[1], p3[1], p4[1]),\n Math.max(p1[0], p2[0], p3[0], p4[0]),\n Math.max(p1[1], p2[1], p3[1], p4[1]),\n ];\n }\n\n static inverseTransform(m) {\n const d = m[0] * m[3] - m[1] * m[2];\n return [\n m[3] / d,\n -m[1] / d,\n -m[2] / d,\n m[0] / d,\n (m[2] * m[5] - m[4] * m[3]) / d,\n (m[4] * m[1] - m[5] * m[0]) / d,\n ];\n }\n\n // Apply a generic 3d matrix M on a 3-vector v:\n // | a b c | | X |\n // | d e f | x | Y |\n // | g h i | | Z |\n // M is assumed to be serialized as [a,b,c,d,e,f,g,h,i],\n // with v as [X,Y,Z]\n static apply3dTransform(m, v) {\n return [\n m[0] * v[0] + m[1] * v[1] + m[2] * v[2],\n m[3] * v[0] + m[4] * v[1] + m[5] * v[2],\n m[6] * v[0] + m[7] * v[1] + m[8] * v[2],\n ];\n }\n\n // This calculation uses Singular Value Decomposition.\n // The SVD can be represented with formula A = USV. We are interested in the\n // matrix S here because it represents the scale values.\n static singularValueDecompose2dScale(m) {\n const transpose = [m[0], m[2], m[1], m[3]];\n\n // Multiply matrix m with its transpose.\n const a = m[0] * transpose[0] + m[1] * transpose[2];\n const b = m[0] * transpose[1] + m[1] * transpose[3];\n const c = m[2] * transpose[0] + m[3] * transpose[2];\n const d = m[2] * transpose[1] + m[3] * transpose[3];\n\n // Solve the second degree polynomial to get roots.\n const first = (a + d) / 2;\n const second = Math.sqrt((a + d) ** 2 - 4 * (a * d - c * b)) / 2;\n const sx = first + second || 1;\n const sy = first - second || 1;\n\n // Scale values are the square roots of the eigenvalues.\n return [Math.sqrt(sx), Math.sqrt(sy)];\n }\n\n // Normalize rectangle rect=[x1, y1, x2, y2] so that (x1,y1) < (x2,y2)\n // For coordinate systems whose origin lies in the bottom-left, this\n // means normalization to (BL,TR) ordering. For systems with origin in the\n // top-left, this means (TL,BR) ordering.\n static normalizeRect(rect) {\n const r = rect.slice(0); // clone rect\n if (rect[0] > rect[2]) {\n r[0] = rect[2];\n r[2] = rect[0];\n }\n if (rect[1] > rect[3]) {\n r[1] = rect[3];\n r[3] = rect[1];\n }\n return r;\n }\n\n // Returns a rectangle [x1, y1, x2, y2] corresponding to the\n // intersection of rect1 and rect2. If no intersection, returns 'false'\n // The rectangle coordinates of rect1, rect2 should be [x1, y1, x2, y2]\n static intersect(rect1, rect2) {\n function compare(a, b) {\n return a - b;\n }\n\n // Order points along the axes\n const orderedX = [rect1[0], rect1[2], rect2[0], rect2[2]].sort(compare);\n const orderedY = [rect1[1], rect1[3], rect2[1], rect2[3]].sort(compare);\n const result = [];\n\n rect1 = Util.normalizeRect(rect1);\n rect2 = Util.normalizeRect(rect2);\n\n // X: first and second points belong to different rectangles?\n if (\n (orderedX[0] === rect1[0] && orderedX[1] === rect2[0]) ||\n (orderedX[0] === rect2[0] && orderedX[1] === rect1[0])\n ) {\n // Intersection must be between second and third points\n result[0] = orderedX[1];\n result[2] = orderedX[2];\n } else {\n return null;\n }\n\n // Y: first and second points belong to different rectangles?\n if (\n (orderedY[0] === rect1[1] && orderedY[1] === rect2[1]) ||\n (orderedY[0] === rect2[1] && orderedY[1] === rect1[1])\n ) {\n // Intersection must be between second and third points\n result[1] = orderedY[1];\n result[3] = orderedY[2];\n } else {\n return null;\n }\n\n return result;\n }\n\n // From https://github.com/adobe-webplatform/Snap.svg/blob/b365287722a72526000ac4bfcf0ce4cac2faa015/src/path.js#L852\n static bezierBoundingBox(x0, y0, x1, y1, x2, y2, x3, y3) {\n const tvalues = [],\n bounds = [[], []];\n let a, b, c, t, t1, t2, b2ac, sqrtb2ac;\n for (let i = 0; i < 2; ++i) {\n if (i === 0) {\n b = 6 * x0 - 12 * x1 + 6 * x2;\n a = -3 * x0 + 9 * x1 - 9 * x2 + 3 * x3;\n c = 3 * x1 - 3 * x0;\n } else {\n b = 6 * y0 - 12 * y1 + 6 * y2;\n a = -3 * y0 + 9 * y1 - 9 * y2 + 3 * y3;\n c = 3 * y1 - 3 * y0;\n }\n if (Math.abs(a) < 1e-12) {\n if (Math.abs(b) < 1e-12) {\n continue;\n }\n t = -c / b;\n if (0 < t && t < 1) {\n tvalues.push(t);\n }\n continue;\n }\n b2ac = b * b - 4 * c * a;\n sqrtb2ac = Math.sqrt(b2ac);\n if (b2ac < 0) {\n continue;\n }\n t1 = (-b + sqrtb2ac) / (2 * a);\n if (0 < t1 && t1 < 1) {\n tvalues.push(t1);\n }\n t2 = (-b - sqrtb2ac) / (2 * a);\n if (0 < t2 && t2 < 1) {\n tvalues.push(t2);\n }\n }\n\n let j = tvalues.length,\n mt;\n const jlen = j;\n while (j--) {\n t = tvalues[j];\n mt = 1 - t;\n bounds[0][j] =\n mt * mt * mt * x0 +\n 3 * mt * mt * t * x1 +\n 3 * mt * t * t * x2 +\n t * t * t * x3;\n bounds[1][j] =\n mt * mt * mt * y0 +\n 3 * mt * mt * t * y1 +\n 3 * mt * t * t * y2 +\n t * t * t * y3;\n }\n\n bounds[0][jlen] = x0;\n bounds[1][jlen] = y0;\n bounds[0][jlen + 1] = x3;\n bounds[1][jlen + 1] = y3;\n bounds[0].length = bounds[1].length = jlen + 2;\n\n return [\n Math.min(...bounds[0]),\n Math.min(...bounds[1]),\n Math.max(...bounds[0]),\n Math.max(...bounds[1]),\n ];\n }\n}\n\nconst PDFStringTranslateTable = [\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2d8,\n 0x2c7, 0x2c6, 0x2d9, 0x2dd, 0x2db, 0x2da, 0x2dc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192,\n 0x2044, 0x2039, 0x203a, 0x2212, 0x2030, 0x201e, 0x201c, 0x201d, 0x2018,\n 0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x141, 0x152, 0x160, 0x178, 0x17d,\n 0x131, 0x142, 0x153, 0x161, 0x17e, 0, 0x20ac,\n];\n\nfunction stringToPDFString(str) {\n const length = str.length,\n strBuf = [];\n if (str[0] === \"\\xFE\" && str[1] === \"\\xFF\") {\n // UTF16BE BOM\n for (let i = 2; i < length; i += 2) {\n strBuf.push(\n String.fromCharCode((str.charCodeAt(i) << 8) | str.charCodeAt(i + 1))\n );\n }\n } else if (str[0] === \"\\xFF\" && str[1] === \"\\xFE\") {\n // UTF16LE BOM\n for (let i = 2; i < length; i += 2) {\n strBuf.push(\n String.fromCharCode((str.charCodeAt(i + 1) << 8) | str.charCodeAt(i))\n );\n }\n } else {\n for (let i = 0; i < length; ++i) {\n const code = PDFStringTranslateTable[str.charCodeAt(i)];\n strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));\n }\n }\n return strBuf.join(\"\");\n}\n\nfunction escapeString(str) {\n // replace \"(\", \")\", \"\\n\", \"\\r\" and \"\\\"\n // by \"\\(\", \"\\)\", \"\\\\n\", \"\\\\r\" and \"\\\\\"\n // in order to write it in a PDF file.\n return str.replace(/([()\\\\\\n\\r])/g, match => {\n if (match === \"\\n\") {\n return \"\\\\n\";\n } else if (match === \"\\r\") {\n return \"\\\\r\";\n }\n return `\\\\${match}`;\n });\n}\n\nfunction isAscii(str) {\n return /^[\\x00-\\x7F]*$/.test(str);\n}\n\nfunction stringToUTF16BEString(str) {\n const buf = [\"\\xFE\\xFF\"];\n for (let i = 0, ii = str.length; i < ii; i++) {\n const char = str.charCodeAt(i);\n buf.push(\n String.fromCharCode((char >> 8) & 0xff),\n String.fromCharCode(char & 0xff)\n );\n }\n return buf.join(\"\");\n}\n\nfunction stringToUTF8String(str) {\n return decodeURIComponent(escape(str));\n}\n\nfunction utf8StringToString(str) {\n return unescape(encodeURIComponent(str));\n}\n\nfunction isBool(v) {\n return typeof v === \"boolean\";\n}\n\nfunction isNum(v) {\n return typeof v === \"number\";\n}\n\nfunction isString(v) {\n return typeof v === \"string\";\n}\n\nfunction isArrayBuffer(v) {\n return typeof v === \"object\" && v !== null && v.byteLength !== undefined;\n}\n\nfunction isArrayEqual(arr1, arr2) {\n if (arr1.length !== arr2.length) {\n return false;\n }\n for (let i = 0, ii = arr1.length; i < ii; i++) {\n if (arr1[i] !== arr2[i]) {\n return false;\n }\n }\n return true;\n}\n\nfunction getModificationDate(date = new Date()) {\n const buffer = [\n date.getUTCFullYear().toString(),\n (date.getUTCMonth() + 1).toString().padStart(2, \"0\"),\n date.getUTCDate().toString().padStart(2, \"0\"),\n date.getUTCHours().toString().padStart(2, \"0\"),\n date.getUTCMinutes().toString().padStart(2, \"0\"),\n date.getUTCSeconds().toString().padStart(2, \"0\"),\n ];\n\n return buffer.join(\"\");\n}\n\n/**\n * Promise Capability object.\n *\n * @typedef {Object} PromiseCapability\n * @property {Promise} promise - A Promise object.\n * @property {boolean} settled - If the Promise has been fulfilled/rejected.\n * @property {function} resolve - Fulfills the Promise.\n * @property {function} reject - Rejects the Promise.\n */\n\n/**\n * Creates a promise capability object.\n * @alias createPromiseCapability\n *\n * @returns {PromiseCapability}\n */\nfunction createPromiseCapability() {\n const capability = Object.create(null);\n let isSettled = false;\n\n Object.defineProperty(capability, \"settled\", {\n get() {\n return isSettled;\n },\n });\n capability.promise = new Promise(function (resolve, reject) {\n capability.resolve = function (data) {\n isSettled = true;\n resolve(data);\n };\n capability.reject = function (reason) {\n isSettled = true;\n reject(reason);\n };\n });\n return capability;\n}\n\nfunction createObjectURL(data, contentType = \"\", forceDataSchema = false) {\n if (URL.createObjectURL && typeof Blob !== \"undefined\" && !forceDataSchema) {\n return URL.createObjectURL(new Blob([data], { type: contentType }));\n }\n // Blob/createObjectURL is not available, falling back to data schema.\n const digits =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\n let buffer = `data:${contentType};base64,`;\n for (let i = 0, ii = data.length; i < ii; i += 3) {\n const b1 = data[i] & 0xff;\n const b2 = data[i + 1] & 0xff;\n const b3 = data[i + 2] & 0xff;\n const d1 = b1 >> 2,\n d2 = ((b1 & 3) << 4) | (b2 >> 4);\n const d3 = i + 1 < ii ? ((b2 & 0xf) << 2) | (b3 >> 6) : 64;\n const d4 = i + 2 < ii ? b3 & 0x3f : 64;\n buffer += digits[d1] + digits[d2] + digits[d3] + digits[d4];\n }\n return buffer;\n}\n\nexport {\n AbortException,\n AnnotationActionEventType,\n AnnotationBorderStyleType,\n AnnotationFieldFlag,\n AnnotationFlag,\n AnnotationMarkedState,\n AnnotationMode,\n AnnotationReplyType,\n AnnotationReviewState,\n AnnotationStateModelType,\n AnnotationType,\n arrayByteLength,\n arraysToBytes,\n assert,\n BaseException,\n bytesToString,\n CMapCompressionType,\n createObjectURL,\n createPromiseCapability,\n createValidAbsoluteUrl,\n DocumentActionEventType,\n escapeString,\n FONT_IDENTITY_MATRIX,\n FontType,\n FormatError,\n getModificationDate,\n getVerbosityLevel,\n IDENTITY_MATRIX,\n ImageKind,\n info,\n InvalidPDFException,\n isArrayBuffer,\n isArrayEqual,\n isAscii,\n isBool,\n IsEvalSupportedCached,\n IsLittleEndianCached,\n isNum,\n isSameOrigin,\n isString,\n MissingPDFException,\n objectFromMap,\n objectSize,\n OPS,\n PageActionEventType,\n PasswordException,\n PasswordResponses,\n PermissionFlag,\n removeNullCharacters,\n RenderingIntentFlag,\n setVerbosityLevel,\n shadow,\n StreamType,\n string32,\n stringToBytes,\n stringToPDFString,\n stringToUTF16BEString,\n stringToUTF8String,\n TextRenderingMode,\n UnexpectedResponseException,\n UnknownErrorException,\n unreachable,\n UNSUPPORTED_FEATURES,\n utf8StringToString,\n Util,\n VerbosityLevel,\n warn,\n};\n","/* Copyright 2017 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { isNodeJS } from \"./is_node.js\";\n\n// Skip compatibility checks for modern builds and if we already ran the module.\nif (\n (typeof PDFJSDev === \"undefined\" || !PDFJSDev.test(\"SKIP_BABEL\")) &&\n (typeof globalThis === \"undefined\" || !globalThis._pdfjsCompatibilityChecked)\n) {\n // Provides support for `globalThis` in legacy browsers.\n // Support: Firefox<65, Chrome<71, Safari<12.1, Node.js<12.0.0\n if (typeof globalThis === \"undefined\" || globalThis.Math !== Math) {\n // eslint-disable-next-line no-global-assign\n globalThis = require(\"core-js/es/global-this\");\n }\n globalThis._pdfjsCompatibilityChecked = true;\n\n // Support: Node.js\n (function checkNodeBtoa() {\n if (globalThis.btoa || !isNodeJS) {\n return;\n }\n globalThis.btoa = function (chars) {\n // eslint-disable-next-line no-undef\n return Buffer.from(chars, \"binary\").toString(\"base64\");\n };\n })();\n\n // Support: Node.js\n (function checkNodeAtob() {\n if (globalThis.atob || !isNodeJS) {\n return;\n }\n globalThis.atob = function (input) {\n // eslint-disable-next-line no-undef\n return Buffer.from(input, \"base64\").toString(\"binary\");\n };\n })();\n\n // Support: Node.js\n (function checkDOMMatrix() {\n if (globalThis.DOMMatrix || !isNodeJS) {\n return;\n }\n globalThis.DOMMatrix = require(\"dommatrix/dist/dommatrix.js\");\n })();\n\n // Provides support for Object.fromEntries in legacy browsers.\n // Support: Firefox<63, Chrome<73, Safari<12.1, Node.js<12.0.0\n (function checkObjectFromEntries() {\n if (Object.fromEntries) {\n return;\n }\n require(\"core-js/es/object/from-entries.js\");\n })();\n\n // Provides support for *recent* additions to the Promise specification,\n // however basic Promise support is assumed to be available natively.\n // Support: Firefox<71, Chrome<76, Safari<13, Node.js<12.9.0\n (function checkPromise() {\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"IMAGE_DECODERS\")) {\n // The current image decoders are synchronous, hence `Promise` shouldn't\n // need to be polyfilled for the IMAGE_DECODERS build target.\n return;\n }\n if (globalThis.Promise.allSettled) {\n return;\n }\n globalThis.Promise = require(\"core-js/es/promise/index.js\");\n })();\n\n // Support: Node.js\n (function checkReadableStream() {\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"IMAGE_DECODERS\")) {\n // The current image decoders are synchronous, hence `ReadableStream`\n // shouldn't need to be polyfilled for the IMAGE_DECODERS build target.\n return;\n }\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"CHROME\")) {\n // Slightly reduce the size of the Chromium-extension, given\n // that `ReadableStream` has been supported since Chrome 43.\n return;\n }\n if (globalThis.ReadableStream || !isNodeJS) {\n return;\n }\n globalThis.ReadableStream =\n require(\"web-streams-polyfill/dist/ponyfill.js\").ReadableStream;\n })();\n}\n","/* Copyright 2018 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/* globals process */\n\n// NW.js / Electron is a browser context, but copies some Node.js objects; see\n// http://docs.nwjs.io/en/latest/For%20Users/Advanced/JavaScript%20Contexts%20in%20NW.js/#access-nodejs-and-nwjs-api-in-browser-context\n// https://www.electronjs.org/docs/api/process#processversionselectron-readonly\n// https://www.electronjs.org/docs/api/process#processtype-readonly\nconst isNodeJS =\n typeof process === \"object\" &&\n process + \"\" === \"[object process]\" &&\n !process.versions.nw &&\n !(process.versions.electron && process.type && process.type !== \"browser\");\n\nexport { isNodeJS };\n","/* Copyright 2015 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { CMapCompressionType, unreachable } from \"../shared/util.js\";\n\nclass BaseCanvasFactory {\n constructor() {\n if (this.constructor === BaseCanvasFactory) {\n unreachable(\"Cannot initialize BaseCanvasFactory.\");\n }\n }\n\n create(width, height) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n const canvas = this._createCanvas(width, height);\n return {\n canvas,\n context: canvas.getContext(\"2d\"),\n };\n }\n\n reset(canvasAndContext, width, height) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n canvasAndContext.canvas.width = width;\n canvasAndContext.canvas.height = height;\n }\n\n destroy(canvasAndContext) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n // Zeroing the width and height cause Firefox to release graphics\n // resources immediately, which can greatly reduce memory consumption.\n canvasAndContext.canvas.width = 0;\n canvasAndContext.canvas.height = 0;\n canvasAndContext.canvas = null;\n canvasAndContext.context = null;\n }\n\n /**\n * @private\n */\n _createCanvas(width, height) {\n unreachable(\"Abstract method `_createCanvas` called.\");\n }\n}\n\nclass BaseCMapReaderFactory {\n constructor({ baseUrl = null, isCompressed = false }) {\n if (this.constructor === BaseCMapReaderFactory) {\n unreachable(\"Cannot initialize BaseCMapReaderFactory.\");\n }\n this.baseUrl = baseUrl;\n this.isCompressed = isCompressed;\n }\n\n async fetch({ name }) {\n if (!this.baseUrl) {\n throw new Error(\n 'The CMap \"baseUrl\" parameter must be specified, ensure that ' +\n 'the \"cMapUrl\" and \"cMapPacked\" API parameters are provided.'\n );\n }\n if (!name) {\n throw new Error(\"CMap name must be specified.\");\n }\n const url = this.baseUrl + name + (this.isCompressed ? \".bcmap\" : \"\");\n const compressionType = this.isCompressed\n ? CMapCompressionType.BINARY\n : CMapCompressionType.NONE;\n\n return this._fetchData(url, compressionType).catch(reason => {\n throw new Error(\n `Unable to load ${this.isCompressed ? \"binary \" : \"\"}CMap at: ${url}`\n );\n });\n }\n\n /**\n * @private\n */\n _fetchData(url, compressionType) {\n unreachable(\"Abstract method `_fetchData` called.\");\n }\n}\n\nclass BaseStandardFontDataFactory {\n constructor({ baseUrl = null }) {\n if (this.constructor === BaseStandardFontDataFactory) {\n unreachable(\"Cannot initialize BaseStandardFontDataFactory.\");\n }\n this.baseUrl = baseUrl;\n }\n\n async fetch({ filename }) {\n if (!this.baseUrl) {\n throw new Error(\n 'The standard font \"baseUrl\" parameter must be specified, ensure that ' +\n 'the \"standardFontDataUrl\" API parameter is provided.'\n );\n }\n if (!filename) {\n throw new Error(\"Font filename must be specified.\");\n }\n const url = `${this.baseUrl}${filename}`;\n\n return this._fetchData(url).catch(reason => {\n throw new Error(`Unable to load font data at: ${url}`);\n });\n }\n\n /**\n * @private\n */\n _fetchData(url) {\n unreachable(\"Abstract method `_fetchData` called.\");\n }\n}\n\nclass BaseSVGFactory {\n constructor() {\n if (this.constructor === BaseSVGFactory) {\n unreachable(\"Cannot initialize BaseSVGFactory.\");\n }\n }\n\n create(width, height) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid SVG dimensions\");\n }\n const svg = this._createSVG(\"svg:svg\");\n svg.setAttribute(\"version\", \"1.1\");\n svg.setAttribute(\"width\", `${width}px`);\n svg.setAttribute(\"height\", `${height}px`);\n svg.setAttribute(\"preserveAspectRatio\", \"none\");\n svg.setAttribute(\"viewBox\", `0 0 ${width} ${height}`);\n\n return svg;\n }\n\n createElement(type) {\n if (typeof type !== \"string\") {\n throw new Error(\"Invalid SVG element type\");\n }\n return this._createSVG(type);\n }\n\n /**\n * @private\n */\n _createSVG(type) {\n unreachable(\"Abstract method `_createSVG` called.\");\n }\n}\n\nexport {\n BaseCanvasFactory,\n BaseCMapReaderFactory,\n BaseStandardFontDataFactory,\n BaseSVGFactory,\n};\n","/* Copyright 2012 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * @module pdfjsLib\n */\n\nimport {\n AbortException,\n AnnotationMode,\n assert,\n createPromiseCapability,\n getVerbosityLevel,\n info,\n InvalidPDFException,\n isArrayBuffer,\n isSameOrigin,\n MissingPDFException,\n PasswordException,\n RenderingIntentFlag,\n setVerbosityLevel,\n shadow,\n stringToBytes,\n UnexpectedResponseException,\n UnknownErrorException,\n unreachable,\n warn,\n} from \"../shared/util.js\";\nimport {\n deprecated,\n DOMCanvasFactory,\n DOMCMapReaderFactory,\n DOMStandardFontDataFactory,\n isDataScheme,\n loadScript,\n PageViewport,\n RenderingCancelledException,\n StatTimer,\n} from \"./display_utils.js\";\nimport { FontFaceObject, FontLoader } from \"./font_loader.js\";\nimport {\n NodeCanvasFactory,\n NodeCMapReaderFactory,\n NodeStandardFontDataFactory,\n} from \"./node_utils.js\";\nimport { AnnotationStorage } from \"./annotation_storage.js\";\nimport { CanvasGraphics } from \"./canvas.js\";\nimport { GlobalWorkerOptions } from \"./worker_options.js\";\nimport { isNodeJS } from \"../shared/is_node.js\";\nimport { MessageHandler } from \"../shared/message_handler.js\";\nimport { Metadata } from \"./metadata.js\";\nimport { OptionalContentConfig } from \"./optional_content_config.js\";\nimport { PDFDataTransportStream } from \"./transport_stream.js\";\nimport { XfaText } from \"./xfa_text.js\";\n\nconst DEFAULT_RANGE_CHUNK_SIZE = 65536; // 2^16 = 65536\nconst RENDERING_CANCELLED_TIMEOUT = 100; // ms\n\nconst DefaultCanvasFactory =\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) && isNodeJS\n ? NodeCanvasFactory\n : DOMCanvasFactory;\nconst DefaultCMapReaderFactory =\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) && isNodeJS\n ? NodeCMapReaderFactory\n : DOMCMapReaderFactory;\nconst DefaultStandardFontDataFactory =\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) && isNodeJS\n ? NodeStandardFontDataFactory\n : DOMStandardFontDataFactory;\n\n/**\n * @typedef {function} IPDFStreamFactory\n * @param {DocumentInitParameters} params - The document initialization\n * parameters. The \"url\" key is always present.\n * @returns {Promise} A promise, which is resolved with an instance of\n * {IPDFStream}.\n * @ignore\n */\n\n/**\n * @type IPDFStreamFactory\n * @private\n */\nlet createPDFNetworkStream;\n\n/**\n * Sets the function that instantiates an {IPDFStream} as an alternative PDF\n * data transport.\n *\n * @param {IPDFStreamFactory} pdfNetworkStreamFactory - The factory function\n * that takes document initialization parameters (including a \"url\") and\n * returns a promise which is resolved with an instance of {IPDFStream}.\n * @ignore\n */\nfunction setPDFNetworkStreamFactory(pdfNetworkStreamFactory) {\n createPDFNetworkStream = pdfNetworkStreamFactory;\n}\n\n/**\n * @typedef { Int8Array | Uint8Array | Uint8ClampedArray |\n * Int16Array | Uint16Array |\n * Int32Array | Uint32Array | Float32Array |\n * Float64Array\n * } TypedArray\n */\n\n/**\n * @typedef {Object} RefProxy\n * @property {number} num\n * @property {number} gen\n */\n\n/**\n * Document initialization / loading parameters object.\n *\n * @typedef {Object} DocumentInitParameters\n * @property {string|URL} [url] - The URL of the PDF.\n * @property {TypedArray|Array|string} [data] - Binary PDF data. Use\n * typed arrays (Uint8Array) to improve the memory usage. If PDF data is\n * BASE64-encoded, use `atob()` to convert it to a binary string first.\n * @property {Object} [httpHeaders] - Basic authentication headers.\n * @property {boolean} [withCredentials] - Indicates whether or not\n * cross-site Access-Control requests should be made using credentials such\n * as cookies or authorization headers. The default is `false`.\n * @property {string} [password] - For decrypting password-protected PDFs.\n * @property {TypedArray} [initialData] - A typed array with the first portion\n * or all of the pdf data. Used by the extension since some data is already\n * loaded before the switch to range requests.\n * @property {number} [length] - The PDF file length. It's used for progress\n * reports and range requests operations.\n * @property {PDFDataRangeTransport} [range] - Allows for using a custom range\n * transport implementation.\n * @property {number} [rangeChunkSize] - Specify maximum number of bytes fetched\n * per range request. The default value is {@link DEFAULT_RANGE_CHUNK_SIZE}.\n * @property {PDFWorker} [worker] - The worker that will be used for loading and\n * parsing the PDF data.\n * @property {number} [verbosity] - Controls the logging level; the constants\n * from {@link VerbosityLevel} should be used.\n * @property {string} [docBaseUrl] - The base URL of the document, used when\n * attempting to recover valid absolute URLs for annotations, and outline\n * items, that (incorrectly) only specify relative URLs.\n * @property {string} [cMapUrl] - The URL where the predefined Adobe CMaps are\n * located. Include the trailing slash.\n * @property {boolean} [cMapPacked] - Specifies if the Adobe CMaps are binary\n * packed or not.\n * @property {Object} [CMapReaderFactory] - The factory that will be used when\n * reading built-in CMap files. Providing a custom factory is useful for\n * environments without Fetch API or `XMLHttpRequest` support, such as\n * Node.js. The default value is {DOMCMapReaderFactory}.\n * @property {boolean} [useSystemFonts] - When `true`, fonts that aren't\n * embedded in the PDF document will fallback to a system font.\n * The default value is `true` in web environments and `false` in Node.js;\n * unless `disableFontFace === true` in which case this defaults to `false`\n * regardless of the environment (to prevent completely broken fonts).\n * @property {string} [standardFontDataUrl] - The URL where the standard font\n * files are located. Include the trailing slash.\n * @property {Object} [StandardFontDataFactory] - The factory that will be used\n * when reading the standard font files. Providing a custom factory is useful\n * for environments without Fetch API or `XMLHttpRequest` support, such as\n * Node.js. The default value is {DOMStandardFontDataFactory}.\n * @property {boolean} [useWorkerFetch] - Enable using the Fetch API in the\n * worker-thread when reading CMap and standard font files. When `true`,\n * the `CMapReaderFactory` and `StandardFontDataFactory` options are ignored.\n * The default value is `true` in web environments and `false` in Node.js.\n * @property {boolean} [stopAtErrors] - Reject certain promises, e.g.\n * `getOperatorList`, `getTextContent`, and `RenderTask`, when the associated\n * PDF data cannot be successfully parsed, instead of attempting to recover\n * whatever possible of the data. The default value is `false`.\n * @property {number} [maxImageSize] - The maximum allowed image size in total\n * pixels, i.e. width * height. Images above this value will not be rendered.\n * Use -1 for no limit, which is also the default value.\n * @property {boolean} [isEvalSupported] - Determines if we can evaluate strings\n * as JavaScript. Primarily used to improve performance of font rendering, and\n * when parsing PDF functions. The default value is `true`.\n * @property {boolean} [disableFontFace] - By default fonts are converted to\n * OpenType fonts and loaded via the Font Loading API or `@font-face` rules.\n * If disabled, fonts will be rendered using a built-in font renderer that\n * constructs the glyphs with primitive path commands.\n * The default value is `false` in web environments and `true` in Node.js.\n * @property {boolean} [fontExtraProperties] - Include additional properties,\n * which are unused during rendering of PDF documents, when exporting the\n * parsed font data from the worker-thread. This may be useful for debugging\n * purposes (and backwards compatibility), but note that it will lead to\n * increased memory usage. The default value is `false`.\n * @property {boolean} [enableXfa] - Render Xfa forms if any.\n * The default value is `false`.\n * @property {HTMLDocument} [ownerDocument] - Specify an explicit document\n * context to create elements with and to load resources, such as fonts,\n * into. Defaults to the current document.\n * @property {boolean} [disableRange] - Disable range request loading of PDF\n * files. When enabled, and if the server supports partial content requests,\n * then the PDF will be fetched in chunks. The default value is `false`.\n * @property {boolean} [disableStream] - Disable streaming of PDF file data.\n * By default PDF.js attempts to load PDF files in chunks. The default value\n * is `false`.\n * @property {boolean} [disableAutoFetch] - Disable pre-fetching of PDF file\n * data. When range requests are enabled PDF.js will automatically keep\n * fetching more data even if it isn't needed to display the current page.\n * The default value is `false`.\n *\n * NOTE: It is also necessary to disable streaming, see above, in order for\n * disabling of pre-fetching to work correctly.\n * @property {boolean} [pdfBug] - Enables special hooks for debugging PDF.js\n * (see `web/debugger.js`). The default value is `false`.\n */\n\n/**\n * This is the main entry point for loading a PDF and interacting with it.\n *\n * NOTE: If a URL is used to fetch the PDF data a standard Fetch API call (or\n * XHR as fallback) is used, which means it must follow same origin rules,\n * e.g. no cross-domain requests without CORS.\n *\n * @param {string|URL|TypedArray|PDFDataRangeTransport|DocumentInitParameters}\n * src - Can be a URL where a PDF file is located, a typed array (Uint8Array)\n * already populated with data, or a parameter object.\n * @returns {PDFDocumentLoadingTask}\n */\nfunction getDocument(src) {\n const task = new PDFDocumentLoadingTask();\n\n let source;\n if (typeof src === \"string\" || src instanceof URL) {\n source = { url: src };\n } else if (isArrayBuffer(src)) {\n source = { data: src };\n } else if (src instanceof PDFDataRangeTransport) {\n source = { range: src };\n } else {\n if (typeof src !== \"object\") {\n throw new Error(\n \"Invalid parameter in getDocument, \" +\n \"need either string, URL, Uint8Array, or parameter object.\"\n );\n }\n if (!src.url && !src.data && !src.range) {\n throw new Error(\n \"Invalid parameter object: need either .data, .range or .url\"\n );\n }\n source = src;\n }\n const params = Object.create(null);\n let rangeTransport = null,\n worker = null;\n\n for (const key in source) {\n const value = source[key];\n\n switch (key) {\n case \"url\":\n if (typeof window !== \"undefined\") {\n try {\n // The full path is required in the 'url' field.\n params[key] = new URL(value, window.location).href;\n continue;\n } catch (ex) {\n warn(`Cannot create valid URL: \"${ex}\".`);\n }\n } else if (typeof value === \"string\" || value instanceof URL) {\n params[key] = value.toString(); // Support Node.js environments.\n continue;\n }\n throw new Error(\n \"Invalid PDF url data: \" +\n \"either string or URL-object is expected in the url property.\"\n );\n case \"range\":\n rangeTransport = value;\n continue;\n case \"worker\":\n worker = value;\n continue;\n case \"data\":\n // Converting string or array-like data to Uint8Array.\n if (\n typeof PDFJSDev !== \"undefined\" &&\n PDFJSDev.test(\"GENERIC\") &&\n isNodeJS &&\n typeof Buffer !== \"undefined\" && // eslint-disable-line no-undef\n value instanceof Buffer // eslint-disable-line no-undef\n ) {\n params[key] = new Uint8Array(value);\n } else if (value instanceof Uint8Array) {\n break; // Use the data as-is when it's already a Uint8Array.\n } else if (typeof value === \"string\") {\n params[key] = stringToBytes(value);\n } else if (\n typeof value === \"object\" &&\n value !== null &&\n !isNaN(value.length)\n ) {\n params[key] = new Uint8Array(value);\n } else if (isArrayBuffer(value)) {\n params[key] = new Uint8Array(value);\n } else {\n throw new Error(\n \"Invalid PDF binary data: either typed array, \" +\n \"string, or array-like object is expected in the data property.\"\n );\n }\n continue;\n }\n params[key] = value;\n }\n\n params.rangeChunkSize = params.rangeChunkSize || DEFAULT_RANGE_CHUNK_SIZE;\n params.CMapReaderFactory =\n params.CMapReaderFactory || DefaultCMapReaderFactory;\n params.StandardFontDataFactory =\n params.StandardFontDataFactory || DefaultStandardFontDataFactory;\n params.ignoreErrors = params.stopAtErrors !== true;\n params.fontExtraProperties = params.fontExtraProperties === true;\n params.pdfBug = params.pdfBug === true;\n params.enableXfa = params.enableXfa === true;\n\n if (\n typeof params.docBaseUrl !== \"string\" ||\n isDataScheme(params.docBaseUrl)\n ) {\n // Ignore \"data:\"-URLs, since they can't be used to recover valid absolute\n // URLs anyway. We want to avoid sending them to the worker-thread, since\n // they contain the *entire* PDF document and can thus be arbitrarily long.\n params.docBaseUrl = null;\n }\n if (!Number.isInteger(params.maxImageSize)) {\n params.maxImageSize = -1;\n }\n if (typeof params.useWorkerFetch !== \"boolean\") {\n params.useWorkerFetch =\n params.CMapReaderFactory === DOMCMapReaderFactory &&\n params.StandardFontDataFactory === DOMStandardFontDataFactory;\n }\n if (typeof params.isEvalSupported !== \"boolean\") {\n params.isEvalSupported = true;\n }\n if (typeof params.disableFontFace !== \"boolean\") {\n params.disableFontFace =\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) && isNodeJS;\n }\n if (typeof params.useSystemFonts !== \"boolean\") {\n params.useSystemFonts =\n !(\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) &&\n isNodeJS\n ) && !params.disableFontFace;\n }\n if (typeof params.ownerDocument === \"undefined\") {\n params.ownerDocument = globalThis.document;\n }\n\n if (typeof params.disableRange !== \"boolean\") {\n params.disableRange = false;\n }\n if (typeof params.disableStream !== \"boolean\") {\n params.disableStream = false;\n }\n if (typeof params.disableAutoFetch !== \"boolean\") {\n params.disableAutoFetch = false;\n }\n\n // Set the main-thread verbosity level.\n setVerbosityLevel(params.verbosity);\n\n if (!worker) {\n const workerParams = {\n verbosity: params.verbosity,\n port: GlobalWorkerOptions.workerPort,\n };\n // Worker was not provided -- creating and owning our own. If message port\n // is specified in global worker options, using it.\n worker = workerParams.port\n ? PDFWorker.fromPort(workerParams)\n : new PDFWorker(workerParams);\n task._worker = worker;\n }\n const docId = task.docId;\n worker.promise\n .then(function () {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n\n const workerIdPromise = _fetchDocument(\n worker,\n params,\n rangeTransport,\n docId\n );\n const networkStreamPromise = new Promise(function (resolve) {\n let networkStream;\n if (rangeTransport) {\n networkStream = new PDFDataTransportStream(\n {\n length: params.length,\n initialData: params.initialData,\n progressiveDone: params.progressiveDone,\n contentDispositionFilename: params.contentDispositionFilename,\n disableRange: params.disableRange,\n disableStream: params.disableStream,\n },\n rangeTransport\n );\n } else if (!params.data) {\n networkStream = createPDFNetworkStream({\n url: params.url,\n length: params.length,\n httpHeaders: params.httpHeaders,\n withCredentials: params.withCredentials,\n rangeChunkSize: params.rangeChunkSize,\n disableRange: params.disableRange,\n disableStream: params.disableStream,\n });\n }\n resolve(networkStream);\n });\n\n return Promise.all([workerIdPromise, networkStreamPromise]).then(\n function ([workerId, networkStream]) {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n\n const messageHandler = new MessageHandler(\n docId,\n workerId,\n worker.port\n );\n const transport = new WorkerTransport(\n messageHandler,\n task,\n networkStream,\n params\n );\n task._transport = transport;\n messageHandler.send(\"Ready\", null);\n }\n );\n })\n .catch(task._capability.reject);\n\n return task;\n}\n\n/**\n * Starts fetching of specified PDF document/data.\n *\n * @param {PDFWorker} worker\n * @param {Object} source\n * @param {PDFDataRangeTransport} pdfDataRangeTransport\n * @param {string} docId - Unique document ID, used in `MessageHandler`.\n * @returns {Promise} A promise that is resolved when the worker ID of\n * the `MessageHandler` is known.\n * @private\n */\nasync function _fetchDocument(worker, source, pdfDataRangeTransport, docId) {\n if (worker.destroyed) {\n throw new Error(\"Worker was destroyed\");\n }\n\n if (pdfDataRangeTransport) {\n source.length = pdfDataRangeTransport.length;\n source.initialData = pdfDataRangeTransport.initialData;\n source.progressiveDone = pdfDataRangeTransport.progressiveDone;\n source.contentDispositionFilename =\n pdfDataRangeTransport.contentDispositionFilename;\n }\n const workerId = await worker.messageHandler.sendWithPromise(\n \"GetDocRequest\",\n {\n docId,\n apiVersion:\n typeof PDFJSDev !== \"undefined\" && !PDFJSDev.test(\"TESTING\")\n ? PDFJSDev.eval(\"BUNDLE_VERSION\")\n : null,\n // Only send the required properties, and *not* the entire object.\n source: {\n data: source.data,\n url: source.url,\n password: source.password,\n disableAutoFetch: source.disableAutoFetch,\n rangeChunkSize: source.rangeChunkSize,\n length: source.length,\n },\n maxImageSize: source.maxImageSize,\n disableFontFace: source.disableFontFace,\n docBaseUrl: source.docBaseUrl,\n ignoreErrors: source.ignoreErrors,\n isEvalSupported: source.isEvalSupported,\n fontExtraProperties: source.fontExtraProperties,\n enableXfa: source.enableXfa,\n useSystemFonts: source.useSystemFonts,\n cMapUrl: source.useWorkerFetch ? source.cMapUrl : null,\n standardFontDataUrl: source.useWorkerFetch\n ? source.standardFontDataUrl\n : null,\n }\n );\n\n if (worker.destroyed) {\n throw new Error(\"Worker was destroyed\");\n }\n return workerId;\n}\n\n/**\n * @typedef {Object} OnProgressParameters\n * @property {number} loaded - Currently loaded number of bytes.\n * @property {number} total - Total number of bytes in the PDF file.\n */\n\n/**\n * The loading task controls the operations required to load a PDF document\n * (such as network requests) and provides a way to listen for completion,\n * after which individual pages can be rendered.\n */\nclass PDFDocumentLoadingTask {\n static get idCounters() {\n return shadow(this, \"idCounters\", { doc: 0 });\n }\n\n constructor() {\n this._capability = createPromiseCapability();\n this._transport = null;\n this._worker = null;\n\n /**\n * Unique identifier for the document loading task.\n * @type {string}\n */\n this.docId = `d${PDFDocumentLoadingTask.idCounters.doc++}`;\n\n /**\n * Whether the loading task is destroyed or not.\n * @type {boolean}\n */\n this.destroyed = false;\n\n /**\n * Callback to request a password if a wrong or no password was provided.\n * The callback receives two parameters: a function that should be called\n * with the new password, and a reason (see {@link PasswordResponses}).\n * @type {function}\n */\n this.onPassword = null;\n\n /**\n * Callback to be able to monitor the loading progress of the PDF file\n * (necessary to implement e.g. a loading bar).\n * The callback receives an {@link OnProgressParameters} argument.\n * @type {function}\n */\n this.onProgress = null;\n\n /**\n * Callback for when an unsupported feature is used in the PDF document.\n * The callback receives an {@link UNSUPPORTED_FEATURES} argument.\n * @type {function}\n */\n this.onUnsupportedFeature = null;\n }\n\n /**\n * Promise for document loading task completion.\n * @type {Promise}\n */\n get promise() {\n return this._capability.promise;\n }\n\n /**\n * Abort all network requests and destroy the worker.\n * @returns {Promise} A promise that is resolved when destruction is\n * completed.\n */\n async destroy() {\n this.destroyed = true;\n await this._transport?.destroy();\n\n this._transport = null;\n if (this._worker) {\n this._worker.destroy();\n this._worker = null;\n }\n }\n}\n\n/**\n * Abstract class to support range requests file loading.\n */\nclass PDFDataRangeTransport {\n /**\n * @param {number} length\n * @param {Uint8Array} initialData\n * @param {boolean} [progressiveDone]\n * @param {string} [contentDispositionFilename]\n */\n constructor(\n length,\n initialData,\n progressiveDone = false,\n contentDispositionFilename = null\n ) {\n this.length = length;\n this.initialData = initialData;\n this.progressiveDone = progressiveDone;\n this.contentDispositionFilename = contentDispositionFilename;\n\n this._rangeListeners = [];\n this._progressListeners = [];\n this._progressiveReadListeners = [];\n this._progressiveDoneListeners = [];\n this._readyCapability = createPromiseCapability();\n }\n\n addRangeListener(listener) {\n this._rangeListeners.push(listener);\n }\n\n addProgressListener(listener) {\n this._progressListeners.push(listener);\n }\n\n addProgressiveReadListener(listener) {\n this._progressiveReadListeners.push(listener);\n }\n\n addProgressiveDoneListener(listener) {\n this._progressiveDoneListeners.push(listener);\n }\n\n onDataRange(begin, chunk) {\n for (const listener of this._rangeListeners) {\n listener(begin, chunk);\n }\n }\n\n onDataProgress(loaded, total) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressListeners) {\n listener(loaded, total);\n }\n });\n }\n\n onDataProgressiveRead(chunk) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveReadListeners) {\n listener(chunk);\n }\n });\n }\n\n onDataProgressiveDone() {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveDoneListeners) {\n listener();\n }\n });\n }\n\n transportReady() {\n this._readyCapability.resolve();\n }\n\n requestDataRange(begin, end) {\n unreachable(\"Abstract method PDFDataRangeTransport.requestDataRange\");\n }\n\n abort() {}\n}\n\n/**\n * Proxy to a `PDFDocument` in the worker thread.\n */\nclass PDFDocumentProxy {\n constructor(pdfInfo, transport) {\n this._pdfInfo = pdfInfo;\n this._transport = transport;\n\n if (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) {\n Object.defineProperty(this, \"fingerprint\", {\n get() {\n deprecated(\n \"`PDFDocumentProxy.fingerprint`, \" +\n \"please use `PDFDocumentProxy.fingerprints` instead.\"\n );\n return this.fingerprints[0];\n },\n });\n\n Object.defineProperty(this, \"getStats\", {\n value: async () => {\n deprecated(\n \"`PDFDocumentProxy.getStats`, \" +\n \"please use the `PDFDocumentProxy.stats`-getter instead.\"\n );\n return this.stats || { streamTypes: {}, fontTypes: {} };\n },\n });\n }\n }\n\n /**\n * @type {AnnotationStorage} Storage for annotation data in forms.\n */\n get annotationStorage() {\n return this._transport.annotationStorage;\n }\n\n /**\n * @type {number} Total number of pages in the PDF file.\n */\n get numPages() {\n return this._pdfInfo.numPages;\n }\n\n /**\n * @type {Array} A (not guaranteed to be) unique ID to\n * identify the PDF document.\n * NOTE: The first element will always be defined for all PDF documents,\n * whereas the second element is only defined for *modified* PDF documents.\n */\n get fingerprints() {\n return this._pdfInfo.fingerprints;\n }\n\n /**\n * @typedef {Object} PDFDocumentStats\n * @property {Object} streamTypes - Used stream types in the\n * document (an item is set to true if specific stream ID was used in the\n * document).\n * @property {Object} fontTypes - Used font types in the\n * document (an item is set to true if specific font ID was used in the\n * document).\n */\n\n /**\n * @type {PDFDocumentStats | null} The current statistics about document\n * structures, or `null` when no statistics exists.\n */\n get stats() {\n return this._transport.stats;\n }\n\n /**\n * @type {boolean} True if only XFA form.\n */\n get isPureXfa() {\n return !!this._transport._htmlForXfa;\n }\n\n /**\n * NOTE: This is (mostly) intended to support printing of XFA forms.\n *\n * @type {Object | null} An object representing a HTML tree structure\n * to render the XFA, or `null` when no XFA form exists.\n */\n get allXfaHtml() {\n return this._transport._htmlForXfa;\n }\n\n /**\n * @param {number} pageNumber - The page number to get. The first page is 1.\n * @returns {Promise} A promise that is resolved with\n * a {@link PDFPageProxy} object.\n */\n getPage(pageNumber) {\n return this._transport.getPage(pageNumber);\n }\n\n /**\n * @param {RefProxy} ref - The page reference.\n * @returns {Promise} A promise that is resolved with the page index,\n * starting from zero, that is associated with the reference.\n */\n getPageIndex(ref) {\n return this._transport.getPageIndex(ref);\n }\n\n /**\n * @returns {Promise>>} A promise that is resolved\n * with a mapping from named destinations to references.\n *\n * This can be slow for large documents. Use `getDestination` instead.\n */\n getDestinations() {\n return this._transport.getDestinations();\n }\n\n /**\n * @param {string} id - The named destination to get.\n * @returns {Promise | null>} A promise that is resolved with all\n * information of the given named destination, or `null` when the named\n * destination is not present in the PDF file.\n */\n getDestination(id) {\n return this._transport.getDestination(id);\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with\n * an {Array} containing the page labels that correspond to the page\n * indexes, or `null` when no page labels are present in the PDF file.\n */\n getPageLabels() {\n return this._transport.getPageLabels();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a {string}\n * containing the page layout name.\n */\n getPageLayout() {\n return this._transport.getPageLayout();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a {string}\n * containing the page mode name.\n */\n getPageMode() {\n return this._transport.getPageMode();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an\n * {Object} containing the viewer preferences, or `null` when no viewer\n * preferences are present in the PDF file.\n */\n getViewerPreferences() {\n return this._transport.getViewerPreferences();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an {Array}\n * containing the destination, or `null` when no open action is present\n * in the PDF.\n */\n getOpenAction() {\n return this._transport.getOpenAction();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a lookup table\n * for mapping named attachments to their content.\n */\n getAttachments() {\n return this._transport.getAttachments();\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with\n * an {Array} of all the JavaScript strings in the name tree, or `null`\n * if no JavaScript exists.\n */\n getJavaScript() {\n return this._transport.getJavaScript();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with\n * an {Object} with the JavaScript actions:\n * - from the name tree (like getJavaScript);\n * - from A or AA entries in the catalog dictionary.\n * , or `null` if no JavaScript exists.\n */\n getJSActions() {\n return this._transport.getDocJSActions();\n }\n\n /**\n * @typedef {Object} OutlineNode\n * @property {string} title\n * @property {boolean} bold\n * @property {boolean} italic\n * @property {Uint8ClampedArray} color - The color in RGB format to use for\n * display purposes.\n * @property {string | Array | null} dest\n * @property {string | null} url\n * @property {string | undefined} unsafeUrl\n * @property {boolean | undefined} newWindow\n * @property {number | undefined} count\n * @property {Array} items\n */\n\n /**\n * @returns {Promise>} A promise that is resolved with an\n * {Array} that is a tree outline (if it has one) of the PDF file.\n */\n getOutline() {\n return this._transport.getOutline();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with\n * an {@link OptionalContentConfig} that contains all the optional content\n * groups (assuming that the document has any).\n */\n getOptionalContentConfig() {\n return this._transport.getOptionalContentConfig();\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with\n * an {Array} that contains the permission flags for the PDF document, or\n * `null` when no permissions are present in the PDF file.\n */\n getPermissions() {\n return this._transport.getPermissions();\n }\n\n /**\n * @returns {Promise<{ info: Object, metadata: Metadata }>} A promise that is\n * resolved with an {Object} that has `info` and `metadata` properties.\n * `info` is an {Object} filled with anything available in the information\n * dictionary and similarly `metadata` is a {Metadata} object with\n * information from the metadata section of the PDF.\n */\n getMetadata() {\n return this._transport.getMetadata();\n }\n\n /**\n * @typedef {Object} MarkInfo\n * Properties correspond to Table 321 of the PDF 32000-1:2008 spec.\n * @property {boolean} Marked\n * @property {boolean} UserProperties\n * @property {boolean} Suspects\n */\n\n /**\n * @returns {Promise} A promise that is resolved with\n * a {MarkInfo} object that contains the MarkInfo flags for the PDF\n * document, or `null` when no MarkInfo values are present in the PDF file.\n */\n getMarkInfo() {\n return this._transport.getMarkInfo();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a\n * {TypedArray} that has the raw data from the PDF.\n */\n getData() {\n return this._transport.getData();\n }\n\n /**\n * @returns {Promise<{ length: number }>} A promise that is resolved when the\n * document's data is loaded. It is resolved with an {Object} that contains\n * the `length` property that indicates size of the PDF data in bytes.\n */\n getDownloadInfo() {\n return this._transport.downloadInfoCapability.promise;\n }\n\n /**\n * Cleans up resources allocated by the document on both the main and worker\n * threads.\n *\n * NOTE: Do not, under any circumstances, call this method when rendering is\n * currently ongoing since that may lead to rendering errors.\n *\n * @param {boolean} [keepLoadedFonts] - Let fonts remain attached to the DOM.\n * NOTE: This will increase persistent memory usage, hence don't use this\n * option unless absolutely necessary. The default value is `false`.\n * @returns {Promise} A promise that is resolved when clean-up has finished.\n */\n cleanup(keepLoadedFonts = false) {\n return this._transport.startCleanup(keepLoadedFonts || this.isPureXfa);\n }\n\n /**\n * Destroys the current document instance and terminates the worker.\n */\n destroy() {\n return this.loadingTask.destroy();\n }\n\n /**\n * @type {DocumentInitParameters} A subset of the current\n * {DocumentInitParameters}, which are needed in the viewer.\n */\n get loadingParams() {\n return this._transport.loadingParams;\n }\n\n /**\n * @type {PDFDocumentLoadingTask} The loadingTask for the current document.\n */\n get loadingTask() {\n return this._transport.loadingTask;\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a\n * {Uint8Array} containing the full data of the saved document.\n */\n saveDocument() {\n if (\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) &&\n this._transport.annotationStorage.size <= 0\n ) {\n deprecated(\n \"saveDocument called while `annotationStorage` is empty, \" +\n \"please use the getData-method instead.\"\n );\n }\n return this._transport.saveDocument();\n }\n\n /**\n * @returns {Promise> | null>} A promise that is\n * resolved with an {Object} containing /AcroForm field data for the JS\n * sandbox, or `null` when no field data is present in the PDF file.\n */\n getFieldObjects() {\n return this._transport.getFieldObjects();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with `true`\n * if some /AcroForm fields have JavaScript actions.\n */\n hasJSActions() {\n return this._transport.hasJSActions();\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with an\n * {Array} containing IDs of annotations that have a calculation\n * action, or `null` when no such annotations are present in the PDF file.\n */\n getCalculationOrderIds() {\n return this._transport.getCalculationOrderIds();\n }\n}\n\n/**\n * Page getViewport parameters.\n *\n * @typedef {Object} GetViewportParameters\n * @property {number} scale - The desired scale of the viewport.\n * @property {number} [rotation] - The desired rotation, in degrees, of\n * the viewport. If omitted it defaults to the page rotation.\n * @property {number} [offsetX] - The horizontal, i.e. x-axis, offset.\n * The default value is `0`.\n * @property {number} [offsetY] - The vertical, i.e. y-axis, offset.\n * The default value is `0`.\n * @property {boolean} [dontFlip] - If true, the y-axis will not be\n * flipped. The default value is `false`.\n */\n\n/**\n * Page getTextContent parameters.\n *\n * @typedef {Object} getTextContentParameters\n * @property {boolean} normalizeWhitespace - Replaces all occurrences of\n * whitespace with standard spaces (0x20). The default value is `false`.\n * @property {boolean} disableCombineTextItems - Do not attempt to combine\n * same line {@link TextItem}'s. The default value is `false`.\n * @property {boolean} [includeMarkedContent] - When true include marked\n * content items in the items array of TextContent. The default is `false`.\n */\n\n/**\n * Page text content.\n *\n * @typedef {Object} TextContent\n * @property {Array} items - Array of\n * {@link TextItem} and {@link TextMarkedContent} objects. TextMarkedContent\n * items are included when includeMarkedContent is true.\n * @property {Object} styles - {@link TextStyle} objects,\n * indexed by font name.\n */\n\n/**\n * Page text content part.\n *\n * @typedef {Object} TextItem\n * @property {string} str - Text content.\n * @property {string} dir - Text direction: 'ttb', 'ltr' or 'rtl'.\n * @property {Array} transform - Transformation matrix.\n * @property {number} width - Width in device space.\n * @property {number} height - Height in device space.\n * @property {string} fontName - Font name used by PDF.js for converted font.\n * @property {boolean} hasEOL - Indicating if the text content is followed by a\n * line-break.\n */\n\n/**\n * Page text marked content part.\n *\n * @typedef {Object} TextMarkedContent\n * @property {string} type - Either 'beginMarkedContent',\n * 'beginMarkedContentProps', or 'endMarkedContent'.\n * @property {string} id - The marked content identifier. Only used for type\n * 'beginMarkedContentProps'.\n */\n\n/**\n * Text style.\n *\n * @typedef {Object} TextStyle\n * @property {number} ascent - Font ascent.\n * @property {number} descent - Font descent.\n * @property {boolean} vertical - Whether or not the text is in vertical mode.\n * @property {string} fontFamily - The possible font family.\n */\n\n/**\n * Page annotation parameters.\n *\n * @typedef {Object} GetAnnotationsParameters\n * @property {string} [intent] - Determines the annotations that are fetched,\n * can be 'display' (viewable annotations), 'print' (printable annotations),\n * or 'any' (all annotations). The default value is 'display'.\n */\n\n/**\n * Page render parameters.\n *\n * @typedef {Object} RenderParameters\n * @property {Object} canvasContext - A 2D context of a DOM Canvas object.\n * @property {PageViewport} viewport - Rendering viewport obtained by calling\n * the `PDFPageProxy.getViewport` method.\n * @property {string} [intent] - Rendering intent, can be 'display', 'print',\n * or 'any'. The default value is 'display'.\n * @property {number} [annotationMode] Controls which annotations are rendered\n * onto the canvas, for annotations with appearance-data; the values from\n * {@link AnnotationMode} should be used. The following values are supported:\n * - `AnnotationMode.DISABLE`, which disables all annotations.\n * - `AnnotationMode.ENABLE`, which includes all possible annotations (thus\n * it also depends on the `intent`-option, see above).\n * - `AnnotationMode.ENABLE_FORMS`, which excludes annotations that contain\n * interactive form elements (those will be rendered in the display layer).\n * - `AnnotationMode.ENABLE_STORAGE`, which includes all possible annotations\n * (as above) but where interactive form elements are updated with data\n * from the {@link AnnotationStorage}-instance; useful e.g. for printing.\n * The default value is `AnnotationMode.ENABLE`.\n * @property {Array} [transform] - Additional transform, applied just\n * before viewport transform.\n * @property {Object} [imageLayer] - An object that has `beginLayout`,\n * `endLayout` and `appendImage` functions.\n * @property {Object} [canvasFactory] - The factory instance that will be used\n * when creating canvases. The default value is {new DOMCanvasFactory()}.\n * @property {Object | string} [background] - Background to use for the canvas.\n * Any valid `canvas.fillStyle` can be used: a `DOMString` parsed as CSS\n * value, a `CanvasGradient` object (a linear or radial gradient) or\n * a `CanvasPattern` object (a repetitive image). The default value is\n * 'rgb(255,255,255)'.\n * @property {Promise} [optionalContentConfigPromise] -\n * A promise that should resolve with an {@link OptionalContentConfig}\n * created from `PDFDocumentProxy.getOptionalContentConfig`. If `null`,\n * the configuration will be fetched automatically with the default visibility\n * states set.\n * @property {Map} [annotationCanvasMap] - Map some\n * annotation ids with canvases used to render them.\n */\n\n/**\n * Page getOperatorList parameters.\n *\n * @typedef {Object} GetOperatorListParameters\n * @property {string} [intent] - Rendering intent, can be 'display', 'print',\n * or 'any'. The default value is 'display'.\n * @property {number} [annotationMode] Controls which annotations are included\n * in the operatorList, for annotations with appearance-data; the values from\n * {@link AnnotationMode} should be used. The following values are supported:\n * - `AnnotationMode.DISABLE`, which disables all annotations.\n * - `AnnotationMode.ENABLE`, which includes all possible annotations (thus\n * it also depends on the `intent`-option, see above).\n * - `AnnotationMode.ENABLE_FORMS`, which excludes annotations that contain\n * interactive form elements (those will be rendered in the display layer).\n * - `AnnotationMode.ENABLE_STORAGE`, which includes all possible annotations\n * (as above) but where interactive form elements are updated with data\n * from the {@link AnnotationStorage}-instance; useful e.g. for printing.\n * The default value is `AnnotationMode.ENABLE`.\n */\n\n/**\n * Structure tree node. The root node will have a role \"Root\".\n *\n * @typedef {Object} StructTreeNode\n * @property {Array} children - Array of\n * {@link StructTreeNode} and {@link StructTreeContent} objects.\n * @property {string} role - element's role, already mapped if a role map exists\n * in the PDF.\n */\n\n/**\n * Structure tree content.\n *\n * @typedef {Object} StructTreeContent\n * @property {string} type - either \"content\" for page and stream structure\n * elements or \"object\" for object references.\n * @property {string} id - unique id that will map to the text layer.\n */\n\n/**\n * PDF page operator list.\n *\n * @typedef {Object} PDFOperatorList\n * @property {Array} fnArray - Array containing the operator functions.\n * @property {Array} argsArray - Array containing the arguments of the\n * functions.\n */\n\n/**\n * Proxy to a `PDFPage` in the worker thread.\n */\nclass PDFPageProxy {\n constructor(pageIndex, pageInfo, transport, ownerDocument, pdfBug = false) {\n this._pageIndex = pageIndex;\n this._pageInfo = pageInfo;\n this._ownerDocument = ownerDocument;\n this._transport = transport;\n this._stats = pdfBug ? new StatTimer() : null;\n this._pdfBug = pdfBug;\n this.commonObjs = transport.commonObjs;\n this.objs = new PDFObjects();\n\n this.cleanupAfterRender = false;\n this.pendingCleanup = false;\n this._intentStates = new Map();\n this._annotationPromises = new Map();\n this.destroyed = false;\n }\n\n /**\n * @type {number} Page number of the page. First page is 1.\n */\n get pageNumber() {\n return this._pageIndex + 1;\n }\n\n /**\n * @type {number} The number of degrees the page is rotated clockwise.\n */\n get rotate() {\n return this._pageInfo.rotate;\n }\n\n /**\n * @type {RefProxy | null} The reference that points to this page.\n */\n get ref() {\n return this._pageInfo.ref;\n }\n\n /**\n * @type {number} The default size of units in 1/72nds of an inch.\n */\n get userUnit() {\n return this._pageInfo.userUnit;\n }\n\n /**\n * @type {Array} An array of the visible portion of the PDF page in\n * user space units [x1, y1, x2, y2].\n */\n get view() {\n return this._pageInfo.view;\n }\n\n /**\n * @param {GetViewportParameters} params - Viewport parameters.\n * @returns {PageViewport} Contains 'width' and 'height' properties\n * along with transforms required for rendering.\n */\n getViewport({\n scale,\n rotation = this.rotate,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false,\n } = {}) {\n return new PageViewport({\n viewBox: this.view,\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip,\n });\n }\n\n /**\n * @param {GetAnnotationsParameters} params - Annotation parameters.\n * @returns {Promise>} A promise that is resolved with an\n * {Array} of the annotation objects.\n */\n getAnnotations({ intent = \"display\" } = {}) {\n const intentArgs = this._transport.getRenderingIntent(intent);\n\n let promise = this._annotationPromises.get(intentArgs.cacheKey);\n if (!promise) {\n promise = this._transport.getAnnotations(\n this._pageIndex,\n intentArgs.renderingIntent\n );\n this._annotationPromises.set(intentArgs.cacheKey, promise);\n\n if (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) {\n promise = promise.then(annotations => {\n for (const annotation of annotations) {\n if (annotation.titleObj !== undefined) {\n Object.defineProperty(annotation, \"title\", {\n get() {\n deprecated(\n \"`title`-property on annotation, please use `titleObj` instead.\"\n );\n return annotation.titleObj.str;\n },\n });\n }\n if (annotation.contentsObj !== undefined) {\n Object.defineProperty(annotation, \"contents\", {\n get() {\n deprecated(\n \"`contents`-property on annotation, please use `contentsObj` instead.\"\n );\n return annotation.contentsObj.str;\n },\n });\n }\n }\n return annotations;\n });\n }\n }\n return promise;\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an\n * {Object} with JS actions.\n */\n getJSActions() {\n return (this._jsActionsPromise ||= this._transport.getPageJSActions(\n this._pageIndex\n ));\n }\n\n /**\n * @returns {Promise} A promise that is resolved with\n * an {Object} with a fake DOM object (a tree structure where elements\n * are {Object} with a name, attributes (class, style, ...), value and\n * children, very similar to a HTML DOM tree), or `null` if no XFA exists.\n */\n async getXfa() {\n return this._transport._htmlForXfa?.children[this._pageIndex] || null;\n }\n\n /**\n * Begins the process of rendering a page to the desired context.\n *\n * @param {RenderParameters} params - Page render parameters.\n * @returns {RenderTask} An object that contains a promise that is\n * resolved when the page finishes rendering.\n */\n render({\n canvasContext,\n viewport,\n intent = \"display\",\n annotationMode = AnnotationMode.ENABLE,\n transform = null,\n imageLayer = null,\n canvasFactory = null,\n background = null,\n optionalContentConfigPromise = null,\n annotationCanvasMap = null,\n }) {\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"GENERIC\")) {\n if (arguments[0]?.renderInteractiveForms !== undefined) {\n deprecated(\n \"render no longer accepts the `renderInteractiveForms`-option, \" +\n \"please use the `annotationMode`-option instead.\"\n );\n if (\n arguments[0].renderInteractiveForms === true &&\n annotationMode === AnnotationMode.ENABLE\n ) {\n annotationMode = AnnotationMode.ENABLE_FORMS;\n }\n }\n if (arguments[0]?.includeAnnotationStorage !== undefined) {\n deprecated(\n \"render no longer accepts the `includeAnnotationStorage`-option, \" +\n \"please use the `annotationMode`-option instead.\"\n );\n if (\n arguments[0].includeAnnotationStorage === true &&\n annotationMode === AnnotationMode.ENABLE\n ) {\n annotationMode = AnnotationMode.ENABLE_STORAGE;\n }\n }\n }\n\n if (this._stats) {\n this._stats.time(\"Overall\");\n }\n\n const intentArgs = this._transport.getRenderingIntent(\n intent,\n annotationMode\n );\n // If there was a pending destroy, cancel it so no cleanup happens during\n // this call to render.\n this.pendingCleanup = false;\n\n if (!optionalContentConfigPromise) {\n optionalContentConfigPromise = this._transport.getOptionalContentConfig();\n }\n\n let intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n\n // Ensure that a pending `streamReader` cancel timeout is always aborted.\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n\n const canvasFactoryInstance =\n canvasFactory ||\n new DefaultCanvasFactory({ ownerDocument: this._ownerDocument });\n const intentPrint = !!(\n intentArgs.renderingIntent & RenderingIntentFlag.PRINT\n );\n\n // If there's no displayReadyCapability yet, then the operatorList\n // was never requested before. Make the request and create the promise.\n if (!intentState.displayReadyCapability) {\n intentState.displayReadyCapability = createPromiseCapability();\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n };\n\n if (this._stats) {\n this._stats.time(\"Page Request\");\n }\n this._pumpOperatorList(intentArgs);\n }\n\n const complete = error => {\n intentState.renderTasks.delete(internalRenderTask);\n\n // Attempt to reduce memory usage during *printing*, by always running\n // cleanup once rendering has finished (regardless of cleanupAfterRender).\n if (this.cleanupAfterRender || intentPrint) {\n this.pendingCleanup = true;\n }\n this._tryCleanup();\n\n if (error) {\n internalRenderTask.capability.reject(error);\n\n this._abortOperatorList({\n intentState,\n reason: error instanceof Error ? error : new Error(error),\n });\n } else {\n internalRenderTask.capability.resolve();\n }\n if (this._stats) {\n this._stats.timeEnd(\"Rendering\");\n this._stats.timeEnd(\"Overall\");\n }\n };\n\n const internalRenderTask = new InternalRenderTask({\n callback: complete,\n // Only include the required properties, and *not* the entire object.\n params: {\n canvasContext,\n viewport,\n transform,\n imageLayer,\n background,\n },\n objs: this.objs,\n commonObjs: this.commonObjs,\n annotationCanvasMap,\n operatorList: intentState.operatorList,\n pageIndex: this._pageIndex,\n canvasFactory: canvasFactoryInstance,\n useRequestAnimationFrame: !intentPrint,\n pdfBug: this._pdfBug,\n });\n\n (intentState.renderTasks ||= new Set()).add(internalRenderTask);\n const renderTask = internalRenderTask.task;\n\n Promise.all([\n intentState.displayReadyCapability.promise,\n optionalContentConfigPromise,\n ])\n .then(([transparency, optionalContentConfig]) => {\n if (this.pendingCleanup) {\n complete();\n return;\n }\n if (this._stats) {\n this._stats.time(\"Rendering\");\n }\n internalRenderTask.initializeGraphics({\n transparency,\n optionalContentConfig,\n });\n internalRenderTask.operatorListChanged();\n })\n .catch(complete);\n\n return renderTask;\n }\n\n /**\n * @param {GetOperatorListParameters} params - Page getOperatorList\n * parameters.\n * @returns {Promise} A promise resolved with an\n * {@link PDFOperatorList} object that represents the page's operator list.\n */\n getOperatorList({\n intent = \"display\",\n annotationMode = AnnotationMode.ENABLE,\n } = {}) {\n function operatorListChanged() {\n if (intentState.operatorList.lastChunk) {\n intentState.opListReadCapability.resolve(intentState.operatorList);\n\n intentState.renderTasks.delete(opListTask);\n }\n }\n\n const intentArgs = this._transport.getRenderingIntent(\n intent,\n annotationMode,\n /* isOpList = */ true\n );\n let intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n let opListTask;\n\n if (!intentState.opListReadCapability) {\n opListTask = Object.create(null);\n opListTask.operatorListChanged = operatorListChanged;\n intentState.opListReadCapability = createPromiseCapability();\n (intentState.renderTasks ||= new Set()).add(opListTask);\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n };\n\n if (this._stats) {\n this._stats.time(\"Page Request\");\n }\n this._pumpOperatorList(intentArgs);\n }\n return intentState.opListReadCapability.promise;\n }\n\n /**\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @returns {ReadableStream} Stream for reading text content chunks.\n */\n streamTextContent({\n normalizeWhitespace = false,\n disableCombineTextItems = false,\n includeMarkedContent = false,\n } = {}) {\n const TEXT_CONTENT_CHUNK_SIZE = 100;\n\n return this._transport.messageHandler.sendWithStream(\n \"GetTextContent\",\n {\n pageIndex: this._pageIndex,\n normalizeWhitespace: normalizeWhitespace === true,\n combineTextItems: disableCombineTextItems !== true,\n includeMarkedContent: includeMarkedContent === true,\n },\n {\n highWaterMark: TEXT_CONTENT_CHUNK_SIZE,\n size(textContent) {\n return textContent.items.length;\n },\n }\n );\n }\n\n /**\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @returns {Promise} A promise that is resolved with a\n * {@link TextContent} object that represents the page's text content.\n */\n getTextContent(params = {}) {\n if (this._transport._htmlForXfa) {\n // TODO: We need to revisit this once the XFA foreground patch lands and\n // only do this for non-foreground XFA.\n return this.getXfa().then(xfa => {\n return XfaText.textContent(xfa);\n });\n }\n const readableStream = this.streamTextContent(params);\n\n return new Promise(function (resolve, reject) {\n function pump() {\n reader.read().then(function ({ value, done }) {\n if (done) {\n resolve(textContent);\n return;\n }\n Object.assign(textContent.styles, value.styles);\n textContent.items.push(...value.items);\n pump();\n }, reject);\n }\n\n const reader = readableStream.getReader();\n const textContent = {\n items: [],\n styles: Object.create(null),\n };\n pump();\n });\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a\n * {@link StructTreeNode} object that represents the page's structure tree,\n * or `null` when no structure tree is present for the current page.\n */\n getStructTree() {\n return (this._structTreePromise ||= this._transport.getStructTree(\n this._pageIndex\n ));\n }\n\n /**\n * Destroys the page object.\n * @private\n */\n _destroy() {\n this.destroyed = true;\n\n const waitOn = [];\n for (const intentState of this._intentStates.values()) {\n this._abortOperatorList({\n intentState,\n reason: new Error(\"Page was destroyed.\"),\n force: true,\n });\n\n if (intentState.opListReadCapability) {\n // Avoid errors below, since the renderTasks are just stubs.\n continue;\n }\n for (const internalRenderTask of intentState.renderTasks) {\n waitOn.push(internalRenderTask.completed);\n internalRenderTask.cancel();\n }\n }\n this.objs.clear();\n this._annotationPromises.clear();\n this._jsActionsPromise = null;\n this._structTreePromise = null;\n this.pendingCleanup = false;\n return Promise.all(waitOn);\n }\n\n /**\n * Cleans up resources allocated by the page.\n *\n * @param {boolean} [resetStats] - Reset page stats, if enabled.\n * The default value is `false`.\n * @returns {boolean} Indicates if clean-up was successfully run.\n */\n cleanup(resetStats = false) {\n this.pendingCleanup = true;\n return this._tryCleanup(resetStats);\n }\n\n /**\n * Attempts to clean up if rendering is in a state where that's possible.\n * @private\n */\n _tryCleanup(resetStats = false) {\n if (!this.pendingCleanup) {\n return false;\n }\n for (const { renderTasks, operatorList } of this._intentStates.values()) {\n if (renderTasks.size > 0 || !operatorList.lastChunk) {\n return false;\n }\n }\n\n this._intentStates.clear();\n this.objs.clear();\n this._annotationPromises.clear();\n this._jsActionsPromise = null;\n this._structTreePromise = null;\n if (resetStats && this._stats) {\n this._stats = new StatTimer();\n }\n this.pendingCleanup = false;\n return true;\n }\n\n /**\n * @private\n */\n _startRenderPage(transparency, cacheKey) {\n const intentState = this._intentStates.get(cacheKey);\n if (!intentState) {\n return; // Rendering was cancelled.\n }\n if (this._stats) {\n this._stats.timeEnd(\"Page Request\");\n }\n // TODO Refactor RenderPageRequest to separate rendering\n // and operator list logic\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.resolve(transparency);\n }\n }\n\n /**\n * @private\n */\n _renderPageChunk(operatorListChunk, intentState) {\n // Add the new chunk to the current operator list.\n for (let i = 0, ii = operatorListChunk.length; i < ii; i++) {\n intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);\n intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);\n }\n intentState.operatorList.lastChunk = operatorListChunk.lastChunk;\n\n // Notify all the rendering tasks there are more operators to be consumed.\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n\n if (operatorListChunk.lastChunk) {\n this._tryCleanup();\n }\n }\n\n /**\n * @private\n */\n _pumpOperatorList({ renderingIntent, cacheKey }) {\n if (\n typeof PDFJSDev === \"undefined\" ||\n PDFJSDev.test(\"!PRODUCTION || TESTING\")\n ) {\n assert(\n Number.isInteger(renderingIntent) && renderingIntent > 0,\n '_pumpOperatorList: Expected valid \"renderingIntent\" argument.'\n );\n }\n\n const readableStream = this._transport.messageHandler.sendWithStream(\n \"GetOperatorList\",\n {\n pageIndex: this._pageIndex,\n intent: renderingIntent,\n cacheKey,\n annotationStorage:\n renderingIntent & RenderingIntentFlag.ANNOTATIONS_STORAGE\n ? this._transport.annotationStorage.serializable\n : null,\n }\n );\n const reader = readableStream.getReader();\n\n const intentState = this._intentStates.get(cacheKey);\n intentState.streamReader = reader;\n\n const pump = () => {\n reader.read().then(\n ({ value, done }) => {\n if (done) {\n intentState.streamReader = null;\n return;\n }\n if (this._transport.destroyed) {\n return; // Ignore any pending requests if the worker was terminated.\n }\n this._renderPageChunk(value, intentState);\n pump();\n },\n reason => {\n intentState.streamReader = null;\n\n if (this._transport.destroyed) {\n return; // Ignore any pending requests if the worker was terminated.\n }\n if (intentState.operatorList) {\n // Mark operator list as complete.\n intentState.operatorList.lastChunk = true;\n\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n this._tryCleanup();\n }\n\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.reject(reason);\n } else if (intentState.opListReadCapability) {\n intentState.opListReadCapability.reject(reason);\n } else {\n throw reason;\n }\n }\n );\n };\n pump();\n }\n\n /**\n * @private\n */\n _abortOperatorList({ intentState, reason, force = false }) {\n if (\n typeof PDFJSDev === \"undefined\" ||\n PDFJSDev.test(\"!PRODUCTION || TESTING\")\n ) {\n assert(\n reason instanceof Error,\n '_abortOperatorList: Expected valid \"reason\" argument.'\n );\n }\n\n if (!intentState.streamReader) {\n return;\n }\n if (!force) {\n // Ensure that an Error occurring in *only* one `InternalRenderTask`, e.g.\n // multiple render() calls on the same canvas, won't break all rendering.\n if (intentState.renderTasks.size > 0) {\n return;\n }\n // Don't immediately abort parsing on the worker-thread when rendering is\n // cancelled, since that will unnecessarily delay re-rendering when (for\n // partially parsed pages) e.g. zooming/rotation occurs in the viewer.\n if (reason instanceof RenderingCancelledException) {\n intentState.streamReaderCancelTimeout = setTimeout(() => {\n this._abortOperatorList({ intentState, reason, force: true });\n intentState.streamReaderCancelTimeout = null;\n }, RENDERING_CANCELLED_TIMEOUT);\n return;\n }\n }\n intentState.streamReader\n .cancel(new AbortException(reason.message))\n .catch(() => {\n // Avoid \"Uncaught promise\" messages in the console.\n });\n intentState.streamReader = null;\n\n if (this._transport.destroyed) {\n return; // Ignore any pending requests if the worker was terminated.\n }\n // Remove the current `intentState`, since a cancelled `getOperatorList`\n // call on the worker-thread cannot be re-started...\n for (const [curCacheKey, curIntentState] of this._intentStates) {\n if (curIntentState === intentState) {\n this._intentStates.delete(curCacheKey);\n break;\n }\n }\n // ... and force clean-up to ensure that any old state is always removed.\n this.cleanup();\n }\n\n /**\n * @type {Object} Returns page stats, if enabled; returns `null` otherwise.\n */\n get stats() {\n return this._stats;\n }\n}\n\nclass LoopbackPort {\n constructor() {\n this._listeners = [];\n this._deferred = Promise.resolve();\n }\n\n postMessage(obj, transfers) {\n function cloneValue(object) {\n if (\n (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"MOZCENTRAL\")) ||\n globalThis.structuredClone\n ) {\n return globalThis.structuredClone(object, transfers);\n }\n\n // Trying to perform a structured clone close to the spec, including\n // transfers.\n function fallbackCloneValue(value) {\n if (\n typeof value === \"function\" ||\n typeof value === \"symbol\" ||\n value instanceof URL\n ) {\n throw new Error(\n `LoopbackPort.postMessage - cannot clone: ${value?.toString()}`\n );\n }\n\n if (typeof value !== \"object\" || value === null) {\n return value;\n }\n if (cloned.has(value)) {\n // already cloned the object\n return cloned.get(value);\n }\n let buffer, result;\n if ((buffer = value.buffer) && isArrayBuffer(buffer)) {\n // We found object with ArrayBuffer (typed array).\n if (transfers?.includes(buffer)) {\n result = new value.constructor(\n buffer,\n value.byteOffset,\n value.byteLength\n );\n } else {\n result = new value.constructor(value);\n }\n cloned.set(value, result);\n return result;\n }\n if (value instanceof Map) {\n result = new Map();\n cloned.set(value, result); // Adding to cache now for cyclic references.\n for (const [key, val] of value) {\n result.set(key, fallbackCloneValue(val));\n }\n return result;\n }\n if (value instanceof Set) {\n result = new Set();\n cloned.set(value, result); // Adding to cache now for cyclic references.\n for (const val of value) {\n result.add(fallbackCloneValue(val));\n }\n return result;\n }\n result = Array.isArray(value) ? [] : Object.create(null);\n cloned.set(value, result); // Adding to cache now for cyclic references.\n // Cloning all value and object properties, however ignoring properties\n // defined via getter.\n for (const i in value) {\n let desc,\n p = value;\n while (!(desc = Object.getOwnPropertyDescriptor(p, i))) {\n p = Object.getPrototypeOf(p);\n }\n if (typeof desc.value === \"undefined\") {\n continue;\n }\n if (typeof desc.value === \"function\" && !value.hasOwnProperty?.(i)) {\n continue;\n }\n result[i] = fallbackCloneValue(desc.value);\n }\n return result;\n }\n\n const cloned = new WeakMap();\n return fallbackCloneValue(object);\n }\n\n const event = { data: cloneValue(obj) };\n\n this._deferred.then(() => {\n for (const listener of this._listeners) {\n listener.call(this, event);\n }\n });\n }\n\n addEventListener(name, listener) {\n this._listeners.push(listener);\n }\n\n removeEventListener(name, listener) {\n const i = this._listeners.indexOf(listener);\n this._listeners.splice(i, 1);\n }\n\n terminate() {\n this._listeners.length = 0;\n }\n}\n\n/**\n * @typedef {Object} PDFWorkerParameters\n * @property {string} [name] - The name of the worker.\n * @property {Object} [port] - The `workerPort` object.\n * @property {number} [verbosity] - Controls the logging level;\n * the constants from {@link VerbosityLevel} should be used.\n */\n\nconst PDFWorkerUtil = {\n isWorkerDisabled: false,\n fallbackWorkerSrc: null,\n fakeWorkerId: 0,\n};\nif (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"GENERIC\")) {\n // eslint-disable-next-line no-undef\n if (isNodeJS && typeof __non_webpack_require__ === \"function\") {\n // Workers aren't supported in Node.js, force-disabling them there.\n PDFWorkerUtil.isWorkerDisabled = true;\n\n PDFWorkerUtil.fallbackWorkerSrc = PDFJSDev.test(\"LIB\")\n ? \"../pdf.worker.js\"\n : \"./pdf.worker.js\";\n } else if (typeof document === \"object\") {\n const pdfjsFilePath = document?.currentScript?.src;\n if (pdfjsFilePath) {\n PDFWorkerUtil.fallbackWorkerSrc = pdfjsFilePath.replace(\n /(\\.(?:min\\.)?js)(\\?.*)?$/i,\n \".worker$1$2\"\n );\n }\n }\n\n PDFWorkerUtil.createCDNWrapper = function (url) {\n // We will rely on blob URL's property to specify origin.\n // We want this function to fail in case if createObjectURL or Blob do not\n // exist or fail for some reason -- our Worker creation will fail anyway.\n const wrapper = `importScripts(\"${url}\");`;\n return URL.createObjectURL(new Blob([wrapper]));\n };\n}\n\n/**\n * PDF.js web worker abstraction that controls the instantiation of PDF\n * documents. Message handlers are used to pass information from the main\n * thread to the worker thread and vice versa. If the creation of a web\n * worker is not possible, a \"fake\" worker will be used instead.\n *\n * @param {PDFWorkerParameters} params - The worker initialization parameters.\n */\nclass PDFWorker {\n static get _workerPorts() {\n return shadow(this, \"_workerPorts\", new WeakMap());\n }\n\n constructor({\n name = null,\n port = null,\n verbosity = getVerbosityLevel(),\n } = {}) {\n if (port && PDFWorker._workerPorts.has(port)) {\n throw new Error(\"Cannot use more than one PDFWorker per port.\");\n }\n\n this.name = name;\n this.destroyed = false;\n this.verbosity = verbosity;\n\n this._readyCapability = createPromiseCapability();\n this._port = null;\n this._webWorker = null;\n this._messageHandler = null;\n\n if (port) {\n PDFWorker._workerPorts.set(port, this);\n this._initializeFromPort(port);\n return;\n }\n this._initialize();\n }\n\n /**\n * Promise for worker initialization completion.\n * @type {Promise}\n */\n get promise() {\n return this._readyCapability.promise;\n }\n\n /**\n * The current `workerPort`, when it exists.\n * @type {Worker}\n */\n get port() {\n return this._port;\n }\n\n /**\n * The current MessageHandler-instance.\n * @type {MessageHandler}\n */\n get messageHandler() {\n return this._messageHandler;\n }\n\n _initializeFromPort(port) {\n this._port = port;\n this._messageHandler = new MessageHandler(\"main\", \"worker\", port);\n this._messageHandler.on(\"ready\", function () {\n // Ignoring \"ready\" event -- MessageHandler should already be initialized\n // and ready to accept messages.\n });\n this._readyCapability.resolve();\n }\n\n _initialize() {\n // If worker support isn't disabled explicit and the browser has worker\n // support, create a new web worker and test if it/the browser fulfills\n // all requirements to run parts of pdf.js in a web worker.\n // Right now, the requirement is, that an Uint8Array is still an\n // Uint8Array as it arrives on the worker. (Chrome added this with v.15.)\n if (\n typeof Worker !== \"undefined\" &&\n !PDFWorkerUtil.isWorkerDisabled &&\n !PDFWorker._mainThreadWorkerMessageHandler\n ) {\n let workerSrc = PDFWorker.workerSrc;\n\n try {\n // Wraps workerSrc path into blob URL, if the former does not belong\n // to the same origin.\n if (\n typeof PDFJSDev !== \"undefined\" &&\n PDFJSDev.test(\"GENERIC\") &&\n !isSameOrigin(window.location.href, workerSrc)\n ) {\n workerSrc = PDFWorkerUtil.createCDNWrapper(\n new URL(workerSrc, window.location).href\n );\n }\n\n // Some versions of FF can't create a worker on localhost, see:\n // https://bugzilla.mozilla.org/show_bug.cgi?id=683280\n const worker = new Worker(workerSrc);\n const messageHandler = new MessageHandler(\"main\", \"worker\", worker);\n const terminateEarly = () => {\n worker.removeEventListener(\"error\", onWorkerError);\n messageHandler.destroy();\n worker.terminate();\n if (this.destroyed) {\n this._readyCapability.reject(new Error(\"Worker was destroyed\"));\n } else {\n // Fall back to fake worker if the termination is caused by an\n // error (e.g. NetworkError / SecurityError).\n this._setupFakeWorker();\n }\n };\n\n const onWorkerError = () => {\n if (!this._webWorker) {\n // Worker failed to initialize due to an error. Clean up and fall\n // back to the fake worker.\n terminateEarly();\n }\n };\n worker.addEventListener(\"error\", onWorkerError);\n\n messageHandler.on(\"test\", data => {\n worker.removeEventListener(\"error\", onWorkerError);\n if (this.destroyed) {\n terminateEarly();\n return; // worker was destroyed\n }\n if (data) {\n this._messageHandler = messageHandler;\n this._port = worker;\n this._webWorker = worker;\n\n this._readyCapability.resolve();\n // Send global setting, e.g. verbosity level.\n messageHandler.send(\"configure\", {\n verbosity: this.verbosity,\n });\n } else {\n this._setupFakeWorker();\n messageHandler.destroy();\n worker.terminate();\n }\n });\n\n messageHandler.on(\"ready\", data => {\n worker.removeEventListener(\"error\", onWorkerError);\n if (this.destroyed) {\n terminateEarly();\n return; // worker was destroyed\n }\n try {\n sendTest();\n } catch (e) {\n // We need fallback to a faked worker.\n this._setupFakeWorker();\n }\n });\n\n const sendTest = () => {\n const testObj = new Uint8Array([255]);\n // Some versions of Opera throw a DATA_CLONE_ERR on serializing the\n // typed array. Also, checking if we can use transfers.\n try {\n messageHandler.send(\"test\", testObj, [testObj.buffer]);\n } catch (ex) {\n warn(\"Cannot use postMessage transfers.\");\n testObj[0] = 0;\n messageHandler.send(\"test\", testObj);\n }\n };\n\n // It might take time for the worker to initialize. We will try to send\n // the \"test\" message immediately, and once the \"ready\" message arrives.\n // The worker shall process only the first received \"test\" message.\n sendTest();\n return;\n } catch (e) {\n info(\"The worker has been disabled.\");\n }\n }\n // Either workers are disabled, not supported or have thrown an exception.\n // Thus, we fallback to a faked worker.\n this._setupFakeWorker();\n }\n\n _setupFakeWorker() {\n if (!PDFWorkerUtil.isWorkerDisabled) {\n warn(\"Setting up fake worker.\");\n PDFWorkerUtil.isWorkerDisabled = true;\n }\n\n PDFWorker._setupFakeWorkerGlobal\n .then(WorkerMessageHandler => {\n if (this.destroyed) {\n this._readyCapability.reject(new Error(\"Worker was destroyed\"));\n return;\n }\n const port = new LoopbackPort();\n this._port = port;\n\n // All fake workers use the same port, making id unique.\n const id = `fake${PDFWorkerUtil.fakeWorkerId++}`;\n\n // If the main thread is our worker, setup the handling for the\n // messages -- the main thread sends to it self.\n const workerHandler = new MessageHandler(id + \"_worker\", id, port);\n WorkerMessageHandler.setup(workerHandler, port);\n\n const messageHandler = new MessageHandler(id, id + \"_worker\", port);\n this._messageHandler = messageHandler;\n this._readyCapability.resolve();\n // Send global setting, e.g. verbosity level.\n messageHandler.send(\"configure\", {\n verbosity: this.verbosity,\n });\n })\n .catch(reason => {\n this._readyCapability.reject(\n new Error(`Setting up fake worker failed: \"${reason.message}\".`)\n );\n });\n }\n\n /**\n * Destroys the worker instance.\n */\n destroy() {\n this.destroyed = true;\n if (this._webWorker) {\n // We need to terminate only web worker created resource.\n this._webWorker.terminate();\n this._webWorker = null;\n }\n PDFWorker._workerPorts.delete(this._port);\n this._port = null;\n if (this._messageHandler) {\n this._messageHandler.destroy();\n this._messageHandler = null;\n }\n }\n\n /**\n * @param {PDFWorkerParameters} params - The worker initialization parameters.\n */\n static fromPort(params) {\n if (!params?.port) {\n throw new Error(\"PDFWorker.fromPort - invalid method signature.\");\n }\n if (this._workerPorts.has(params.port)) {\n return this._workerPorts.get(params.port);\n }\n return new PDFWorker(params);\n }\n\n /**\n * The current `workerSrc`, when it exists.\n * @type {string}\n */\n static get workerSrc() {\n if (GlobalWorkerOptions.workerSrc) {\n return GlobalWorkerOptions.workerSrc;\n }\n if (PDFWorkerUtil.fallbackWorkerSrc !== null) {\n if (!isNodeJS) {\n deprecated('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n return PDFWorkerUtil.fallbackWorkerSrc;\n }\n throw new Error('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n\n static get _mainThreadWorkerMessageHandler() {\n try {\n return globalThis.pdfjsWorker?.WorkerMessageHandler || null;\n } catch (ex) {\n return null;\n }\n }\n\n // Loads worker code into the main-thread.\n static get _setupFakeWorkerGlobal() {\n const loader = async () => {\n const mainWorkerMessageHandler = this._mainThreadWorkerMessageHandler;\n\n if (mainWorkerMessageHandler) {\n // The worker was already loaded using e.g. a `