{"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/shared/is_node.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/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/text_layer.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/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;\nconst BASELINE_FACTOR = LINE_DESCENT_FACTOR / LINE_FACTOR;\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 SAVE: 0x08,\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, nonSerializable = false) {\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: !nonSerializable,\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 static get platform() {\n if (\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) &&\n typeof navigator === \"undefined\"\n ) {\n return shadow(this, \"platform\", { isWin: false, isMac: false });\n }\n return shadow(this, \"platform\", {\n isWin: navigator.platform.includes(\"Win\"),\n isMac: navigator.platform.includes(\"Mac\"),\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 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 BASELINE_FACTOR,\n bytesToString,\n CMapCompressionType,\n createPromiseCapability,\n createValidAbsoluteUrl,\n DocumentActionEventType,\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 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 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 #onUnsupportedFeature = null;\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 /**\n * @type {function | null} The current callback used with unsupported\n * features.\n */\n get onUnsupportedFeature() {\n return this.#onUnsupportedFeature;\n }\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 set onUnsupportedFeature(callback) {\n deprecated(\n \"The PDFDocumentLoadingTask onUnsupportedFeature property will be removed in the future.\"\n );\n this.#onUnsupportedFeature = callback;\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 deprecated(\n \"The PDFDocumentProxy stats property will be removed in the future.\"\n );\n return this._transport.stats;\n }\n\n /**\n * @type {boolean} True if only XFA form.\n */\n get isPureXfa() {\n return shadow(this, \"isPureXfa\", !!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.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 return this._transport.getAnnotations(\n this._pageIndex,\n intentArgs.renderingIntent\n );\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an\n * {Object} with JS actions.\n */\n getJSActions() {\n return this._transport.getPageJSActions(this._pageIndex);\n }\n\n /**\n * @type {boolean} True if only XFA form.\n */\n get isPureXfa() {\n return shadow(this, \"isPureXfa\", !!this._transport._htmlForXfa);\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._transport.getStructTree(this._pageIndex);\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.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 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 // 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 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 let delay = RENDERING_CANCELLED_TIMEOUT;\n if (reason.extraDelay > 0 && reason.extraDelay < /* ms = */ 1000) {\n // Above, we prevent the total delay from becoming arbitrarily large.\n delay += reason.extraDelay;\n }\n\n intentState.streamReaderCancelTimeout = setTimeout(() => {\n intentState.streamReaderCancelTimeout = null;\n this._abortOperatorList({ intentState, reason, force: true });\n }, delay);\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 `