{"version":3,"file":"pdf.js","mappings":"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","sources":["webpack://pdfjs-dist/build/pdf/webpack/universalModuleDefinition","webpack://pdfjs-dist/build/pdf/src/shared/util.js","webpack://pdfjs-dist/build/pdf/src/display/api.js","webpack://pdfjs-dist/build/pdf/src/display/annotation_storage.js","webpack://pdfjs-dist/build/pdf/src/display/editor/editor.js","webpack://pdfjs-dist/build/pdf/src/display/editor/tools.js","webpack://pdfjs-dist/build/pdf/src/display/display_utils.js","webpack://pdfjs-dist/build/pdf/src/display/base_factory.js","webpack://pdfjs-dist/build/pdf/src/shared/murmurhash3.js","webpack://pdfjs-dist/build/pdf/src/display/font_loader.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/shared/is_node.js","webpack://pdfjs-dist/build/pdf/src/shared/image_utils.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/node_utils.js","webpack://pdfjs-dist/build/pdf/src/display/editor/annotation_editor_layer.js","webpack://pdfjs-dist/build/pdf/src/display/editor/freetext.js","webpack://pdfjs-dist/build/pdf/src/display/editor/ink.js","webpack://pdfjs-dist/build/pdf/src/display/editor/fit_curve.js","webpack://pdfjs-dist/build/pdf/node_modules/fit-curve/src/fit-curve.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})(globalThis, () => {\nreturn ","/* 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// Skip compatibility checks for modern builds and if we already ran the module.\nif (\n typeof PDFJSDev !== \"undefined\" &&\n !PDFJSDev.test(\"SKIP_BABEL\") &&\n !globalThis._pdfjsCompatibilityChecked\n) {\n globalThis._pdfjsCompatibilityChecked = true;\n require(\"./compatibility.js\");\n}\n\nconst IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\nconst FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\n\n// Represent the percentage of the height of a single-line field over\n// the font size. Acrobat seems to use this value.\nconst LINE_FACTOR = 1.35;\nconst LINE_DESCENT_FACTOR = 0.35;\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\nconst AnnotationEditorPrefix = \"pdfjs_internal_editor_\";\n\nconst AnnotationEditorType = {\n DISABLE: -1,\n NONE: 0,\n FREETEXT: 3,\n INK: 15,\n};\n\nconst AnnotationEditorParamsType = {\n FREETEXT_SIZE: 1,\n FREETEXT_COLOR: 2,\n FREETEXT_OPACITY: 3,\n INK_COLOR: 11,\n INK_THICKNESS: 12,\n INK_OPACITY: 13,\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};\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 // PLEASE NOTE: We purposely keep any removed operators commented out, since\n // re-numbering the list would risk breaking third-party users.\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 // 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 forms: \"forms\",\n javaScript: \"javaScript\",\n signatures: \"signatures\",\n smask: \"smask\",\n shadingPattern: \"shadingPattern\",\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 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\nfunction bytesToString(bytes) {\n if (\n typeof bytes !== \"object\" ||\n bytes === null ||\n bytes.length === undefined\n ) {\n unreachable(\"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 if (typeof str !== \"string\") {\n unreachable(\"Invalid argument for stringToBytes\");\n }\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 */\n// eslint-disable-next-line consistent-return\nfunction arrayByteLength(arr) {\n if (arr.length !== undefined) {\n return arr.length;\n }\n if (arr.byteLength !== undefined) {\n return arr.byteLength;\n }\n unreachable(\"Invalid argument for arrayByteLength\");\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}\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}\n\nclass FeatureTest {\n static get isLittleEndian() {\n return shadow(this, \"isLittleEndian\", isLittleEndian());\n }\n\n static get isEvalSupported() {\n return shadow(this, \"isEvalSupported\", isEvalSupported());\n }\n\n static get isOffscreenCanvasSupported() {\n return shadow(\n this,\n \"isOffscreenCanvasSupported\",\n typeof OffscreenCanvas !== \"undefined\"\n );\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 // Apply a scaling matrix to some min/max values.\n // If a scaling factor is negative then min and max must be\n // swaped.\n static scaleMinMax(transform, minMax) {\n let temp;\n if (transform[0]) {\n if (transform[0] < 0) {\n temp = minMax[0];\n minMax[0] = minMax[1];\n minMax[1] = temp;\n }\n minMax[0] *= transform[0];\n minMax[1] *= transform[0];\n\n if (transform[3] < 0) {\n temp = minMax[2];\n minMax[2] = minMax[3];\n minMax[3] = temp;\n }\n minMax[2] *= transform[3];\n minMax[3] *= transform[3];\n } else {\n temp = minMax[0];\n minMax[0] = minMax[2];\n minMax[2] = temp;\n temp = minMax[1];\n minMax[1] = minMax[3];\n minMax[3] = temp;\n\n if (transform[1] < 0) {\n temp = minMax[2];\n minMax[2] = minMax[3];\n minMax[3] = temp;\n }\n minMax[2] *= transform[1];\n minMax[3] *= transform[1];\n\n if (transform[2] < 0) {\n temp = minMax[0];\n minMax[0] = minMax[1];\n minMax[1] = temp;\n }\n minMax[0] *= transform[2];\n minMax[1] *= transform[2];\n }\n minMax[0] += transform[4];\n minMax[1] += transform[4];\n minMax[2] += transform[5];\n minMax[3] += transform[5];\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 // 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 'null'\n // The rectangle coordinates of rect1, rect2 should be [x1, y1, x2, y2]\n static intersect(rect1, rect2) {\n const xLow = Math.max(\n Math.min(rect1[0], rect1[2]),\n Math.min(rect2[0], rect2[2])\n );\n const xHigh = Math.min(\n Math.max(rect1[0], rect1[2]),\n Math.max(rect2[0], rect2[2])\n );\n if (xLow > xHigh) {\n return null;\n }\n const yLow = Math.max(\n Math.min(rect1[1], rect1[3]),\n Math.min(rect2[1], rect2[3])\n );\n const yHigh = Math.min(\n Math.max(rect1[1], rect1[3]),\n Math.max(rect2[1], rect2[3])\n );\n if (yLow > yHigh) {\n return null;\n }\n\n return [xLow, yLow, xHigh, yHigh];\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 if (str[0] >= \"\\xEF\") {\n let encoding;\n if (str[0] === \"\\xFE\" && str[1] === \"\\xFF\") {\n encoding = \"utf-16be\";\n } else if (str[0] === \"\\xFF\" && str[1] === \"\\xFE\") {\n encoding = \"utf-16le\";\n } else if (str[0] === \"\\xEF\" && str[1] === \"\\xBB\" && str[2] === \"\\xBF\") {\n encoding = \"utf-8\";\n }\n\n if (encoding) {\n try {\n const decoder = new TextDecoder(encoding, { fatal: true });\n const buffer = stringToBytes(str);\n return decoder.decode(buffer);\n } catch (ex) {\n warn(`stringToPDFString: \"${ex}\".`);\n }\n }\n }\n // ISO Latin 1\n const strBuf = [];\n for (let i = 0, ii = str.length; i < ii; i++) {\n const code = PDFStringTranslateTable[str.charCodeAt(i)];\n strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));\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 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\nexport {\n AbortException,\n AnnotationActionEventType,\n AnnotationBorderStyleType,\n AnnotationEditorParamsType,\n AnnotationEditorPrefix,\n AnnotationEditorType,\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 createPromiseCapability,\n createValidAbsoluteUrl,\n DocumentActionEventType,\n escapeString,\n FeatureTest,\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 LINE_DESCENT_FACTOR,\n LINE_FACTOR,\n MissingPDFException,\n objectFromMap,\n objectSize,\n OPS,\n PageActionEventType,\n PasswordException,\n PasswordResponses,\n PermissionFlag,\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 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 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 AnnotationStorage,\n PrintAnnotationStorage,\n} from \"./annotation_storage.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 { 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\nlet DefaultCanvasFactory = DOMCanvasFactory;\nlet DefaultCMapReaderFactory = DOMCMapReaderFactory;\nlet DefaultStandardFontDataFactory = DOMStandardFontDataFactory;\n\nif (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"GENERIC\") && isNodeJS) {\n const {\n NodeCanvasFactory,\n NodeCMapReaderFactory,\n NodeStandardFontDataFactory,\n } = require(\"./node_utils.js\");\n\n DefaultCanvasFactory = NodeCanvasFactory;\n DefaultCMapReaderFactory = NodeCMapReaderFactory;\n DefaultStandardFontDataFactory = NodeStandardFontDataFactory;\n}\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 { TypedArray | ArrayBuffer | Array | string } BinaryData\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 {BinaryData} [data] - Binary PDF data.\n * Use 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} [isOffscreenCanvasSupported] - Determines if we can use\n * `OffscreenCanvas` in the worker. Primarily used to improve performance of\n * image conversion/rendering.\n * The default value is `true` in web environments and `false` in Node.js.\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 * @typedef { string | URL | TypedArray | ArrayBuffer |\n * PDFDataRangeTransport | DocumentInitParameters\n * } GetDocumentParameters\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 {GetDocumentParameters}\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, TypedArray, 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 TypedArray, \" +\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.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 (!Number.isInteger(params.rangeChunkSize) || params.rangeChunkSize < 1) {\n params.rangeChunkSize = DEFAULT_RANGE_CHUNK_SIZE;\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) || params.maxImageSize < -1) {\n params.maxImageSize = -1;\n }\n if (typeof params.cMapUrl !== \"string\") {\n params.cMapUrl = null;\n }\n if (typeof params.standardFontDataUrl !== \"string\") {\n params.standardFontDataUrl = null;\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.isOffscreenCanvasSupported !== \"boolean\") {\n params.isOffscreenCanvasSupported = !isNodeJS;\n }\n if (typeof params.disableFontFace !== \"boolean\") {\n params.disableFontFace = isNodeJS;\n }\n if (typeof params.useSystemFonts !== \"boolean\") {\n params.useSystemFonts = !isNodeJS && !params.disableFontFace;\n }\n if (\n typeof params.ownerDocument !== \"object\" ||\n params.ownerDocument === null\n ) {\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 // Only send the required properties, and *not* the entire `source` object.\n {\n docId,\n apiVersion:\n typeof PDFJSDev !== \"undefined\" && !PDFJSDev.test(\"TESTING\")\n ? PDFJSDev.eval(\"BUNDLE_VERSION\")\n : null,\n data: source.data,\n password: source.password,\n disableAutoFetch: source.disableAutoFetch,\n rangeChunkSize: source.rangeChunkSize,\n length: source.length,\n docBaseUrl: source.docBaseUrl,\n enableXfa: source.enableXfa,\n evaluatorOptions: {\n maxImageSize: source.maxImageSize,\n disableFontFace: source.disableFontFace,\n ignoreErrors: source.ignoreErrors,\n isEvalSupported: source.isEvalSupported,\n isOffscreenCanvasSupported: source.isOffscreenCanvasSupported,\n fontExtraProperties: source.fontExtraProperties,\n useSystemFonts: source.useSystemFonts,\n cMapUrl: source.useWorkerFetch ? source.cMapUrl : null,\n standardFontDataUrl: source.useWorkerFetch\n ? source.standardFontDataUrl\n : null,\n },\n }\n );\n\n // Release the TypedArray data, when it exists, since it's no longer needed\n // on the main-thread *after* it's been sent to the worker-thread.\n if (source.data) {\n source.data = null;\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 #docId = 0;\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.#docId++}`;\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\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 * {Uint8Array} containing the raw data of the PDF document.\n */\n getData() {\n return this._transport.getData();\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 return this._transport.saveDocument();\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> | 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} 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} [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 *\n * NOTE: This option may be partially, or completely, ignored when the\n * `pageColors`-option is used.\n * @property {Object} [pageColors] - Overwrites background and foreground colors\n * with user defined ones in order to improve readability in high contrast\n * mode.\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 * @property {PrintAnnotationStorage} [printAnnotationStorage]\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 * @property {PrintAnnotationStorage} [printAnnotationStorage]\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 /** @type {PDFObjects} */\n this.commonObjs = transport.commonObjs;\n this.objs = new PDFObjects();\n\n this._bitmaps = new Set();\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 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 canvasFactory = null,\n background = null,\n optionalContentConfigPromise = null,\n annotationCanvasMap = null,\n pageColors = null,\n printAnnotationStorage = null,\n }) {\n this._stats?.time(\"Overall\");\n\n const intentArgs = this._transport.getRenderingIntent(\n intent,\n annotationMode,\n printAnnotationStorage\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 separateAnnots: null,\n };\n\n this._stats?.time(\"Page Request\");\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\n this._stats?.timeEnd(\"Rendering\");\n this._stats?.timeEnd(\"Overall\");\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 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 pageColors,\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 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 printAnnotationStorage = null,\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 printAnnotationStorage,\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 separateAnnots: null,\n };\n\n this._stats?.time(\"Page Request\");\n this._pumpOperatorList(intentArgs);\n }\n return intentState.opListReadCapability.promise;\n }\n\n /**\n * NOTE: All occurrences of whitespace will be replaced by\n * standard spaces (0x20).\n *\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @returns {ReadableStream} Stream for reading text content chunks.\n */\n streamTextContent({\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 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 * NOTE: All occurrences of whitespace will be replaced by\n * standard spaces (0x20).\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 for (const bitmap of this._bitmaps) {\n bitmap.close();\n }\n this._bitmaps.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 for (const bitmap of this._bitmaps) {\n bitmap.close();\n }\n this._bitmaps.clear();\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 this._stats?.timeEnd(\"Page Request\");\n\n // TODO Refactor RenderPageRequest to separate rendering\n // and operator list logic\n intentState.displayReadyCapability?.resolve(transparency);\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 intentState.operatorList.separateAnnots = operatorListChunk.separateAnnots;\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, annotationStorageMap }) {\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: annotationStorageMap,\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 #listeners = [];\n\n #deferred = Promise.resolve();\n\n postMessage(obj, transfers) {\n const event = {\n data: structuredClone(obj, transfers),\n };\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 // Check if URLs have the same origin. For non-HTTP based URLs, returns false.\n PDFWorkerUtil.isSameOrigin = function (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 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 #workerPorts = new WeakMap();\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 // Send global setting, e.g. verbosity level.\n this._messageHandler.send(\"configure\", {\n verbosity: this.verbosity,\n });\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 !PDFWorkerUtil.isWorkerDisabled &&\n !PDFWorker._mainThreadWorkerMessageHandler\n ) {\n let { workerSrc } = PDFWorker;\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 !PDFWorkerUtil.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();\n // Ensure that we can use `postMessage` transfers.\n messageHandler.send(\"test\", testObj, [testObj.buffer]);\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 (\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) &&\n PDFWorkerUtil.fallbackWorkerSrc !== null\n ) {\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 `