{"version":3,"file":"pdf.js","mappings":"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","sources":["webpack://pdfjs-dist/build/pdf/webpack/universalModuleDefinition","webpack://pdfjs-dist/build/pdf/src/shared/util.js","webpack://pdfjs-dist/build/pdf/src/display/api.js","webpack://pdfjs-dist/build/pdf/src/display/annotation_storage.js","webpack://pdfjs-dist/build/pdf/src/display/editor/editor.js","webpack://pdfjs-dist/build/pdf/src/display/editor/tools.js","webpack://pdfjs-dist/build/pdf/src/display/display_utils.js","webpack://pdfjs-dist/build/pdf/src/display/base_factory.js","webpack://pdfjs-dist/build/pdf/src/shared/murmurhash3.js","webpack://pdfjs-dist/build/pdf/src/display/font_loader.js","webpack://pdfjs-dist/build/pdf/src/display/canvas.js","webpack://pdfjs-dist/build/pdf/src/display/pattern_helper.js","webpack://pdfjs-dist/build/pdf/src/shared/is_node.js","webpack://pdfjs-dist/build/pdf/src/shared/image_utils.js","webpack://pdfjs-dist/build/pdf/src/display/worker_options.js","webpack://pdfjs-dist/build/pdf/src/shared/message_handler.js","webpack://pdfjs-dist/build/pdf/src/display/metadata.js","webpack://pdfjs-dist/build/pdf/src/display/optional_content_config.js","webpack://pdfjs-dist/build/pdf/src/display/transport_stream.js","webpack://pdfjs-dist/build/pdf/src/display/xfa_text.js","webpack://pdfjs-dist/build/pdf/src/display/node_utils.js","webpack://pdfjs-dist/build/pdf/src/display/editor/annotation_editor_layer.js","webpack://pdfjs-dist/build/pdf/src/display/editor/freetext.js","webpack://pdfjs-dist/build/pdf/src/display/editor/ink.js","webpack://pdfjs-dist/build/pdf/src/display/editor/fit_curve.js","webpack://pdfjs-dist/build/pdf/node_modules/fit-curve/src/fit-curve.js","webpack://pdfjs-dist/build/pdf/src/display/annotation_layer.js","webpack://pdfjs-dist/build/pdf/src/shared/scripting_utils.js","webpack://pdfjs-dist/build/pdf/src/display/xfa_layer.js","webpack://pdfjs-dist/build/pdf/src/display/text_layer.js","webpack://pdfjs-dist/build/pdf/src/display/svg.js","webpack://pdfjs-dist/build/pdf/src/display/node_stream.js","webpack://pdfjs-dist/build/pdf/src/display/network_utils.js","webpack://pdfjs-dist/build/pdf/src/display/content_disposition.js","webpack://pdfjs-dist/build/pdf/src/display/network.js","webpack://pdfjs-dist/build/pdf/src/display/fetch_stream.js","webpack://pdfjs-dist/build/pdf/webpack/bootstrap","webpack://pdfjs-dist/build/pdf/src/pdf.js"],"sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"pdfjs-dist/build/pdf\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"pdfjs-dist/build/pdf\"] = factory();\n\telse\n\t\troot[\"pdfjs-dist/build/pdf\"] = factory();\n})(globalThis, () => {\nreturn ","/* Copyright 2012 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n// Skip compatibility checks for modern builds and if we already ran the module.\nif (\n typeof PDFJSDev !== \"undefined\" &&\n !PDFJSDev.test(\"SKIP_BABEL\") &&\n !globalThis._pdfjsCompatibilityChecked\n) {\n globalThis._pdfjsCompatibilityChecked = true;\n require(\"./compatibility.js\");\n}\n\nconst IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\nconst FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\n\n// Represent the percentage of the height of a single-line field over\n// the font size. Acrobat seems to use this value.\nconst LINE_FACTOR = 1.35;\nconst LINE_DESCENT_FACTOR = 0.35;\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\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 constructor() {\n this._capability = createPromiseCapability();\n this._transport = null;\n this._worker = null;\n\n /**\n * Unique identifier for the document loading task.\n * @type {string}\n */\n this.docId = `d${PDFDocumentLoadingTask.#docId++}`;\n\n /**\n * Whether the loading task is destroyed or not.\n * @type {boolean}\n */\n this.destroyed = false;\n\n /**\n * Callback to request a password if a wrong or no password was provided.\n * The callback receives two parameters: a function that should be called\n * with the new password, and a reason (see {@link PasswordResponses}).\n * @type {function}\n */\n this.onPassword = null;\n\n /**\n * Callback to be able to monitor the loading progress of the PDF file\n * (necessary to implement e.g. a loading bar).\n * The callback receives an {@link OnProgressParameters} argument.\n * @type {function}\n */\n this.onProgress = null;\n\n /**\n * Callback for when an unsupported feature is used in the PDF document.\n * The callback receives an {@link UNSUPPORTED_FEATURES} argument.\n * @type {function}\n */\n this.onUnsupportedFeature = null;\n }\n\n /**\n * Promise for document loading task completion.\n * @type {Promise}\n */\n get promise() {\n return this._capability.promise;\n }\n\n /**\n * Abort all network requests and destroy the worker.\n * @returns {Promise} A promise that is resolved when destruction is\n * completed.\n */\n async destroy() {\n this.destroyed = true;\n await this._transport?.destroy();\n\n this._transport = null;\n if (this._worker) {\n this._worker.destroy();\n this._worker = null;\n }\n }\n}\n\n/**\n * Abstract class to support range requests file loading.\n */\nclass PDFDataRangeTransport {\n /**\n * @param {number} length\n * @param {Uint8Array} initialData\n * @param {boolean} [progressiveDone]\n * @param {string} [contentDispositionFilename]\n */\n constructor(\n length,\n initialData,\n progressiveDone = false,\n contentDispositionFilename = null\n ) {\n this.length = length;\n this.initialData = initialData;\n this.progressiveDone = progressiveDone;\n this.contentDispositionFilename = contentDispositionFilename;\n\n this._rangeListeners = [];\n this._progressListeners = [];\n this._progressiveReadListeners = [];\n this._progressiveDoneListeners = [];\n this._readyCapability = createPromiseCapability();\n }\n\n addRangeListener(listener) {\n this._rangeListeners.push(listener);\n }\n\n addProgressListener(listener) {\n this._progressListeners.push(listener);\n }\n\n addProgressiveReadListener(listener) {\n this._progressiveReadListeners.push(listener);\n }\n\n addProgressiveDoneListener(listener) {\n this._progressiveDoneListeners.push(listener);\n }\n\n onDataRange(begin, chunk) {\n for (const listener of this._rangeListeners) {\n listener(begin, chunk);\n }\n }\n\n onDataProgress(loaded, total) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressListeners) {\n listener(loaded, total);\n }\n });\n }\n\n onDataProgressiveRead(chunk) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveReadListeners) {\n listener(chunk);\n }\n });\n }\n\n onDataProgressiveDone() {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveDoneListeners) {\n listener();\n }\n });\n }\n\n transportReady() {\n this._readyCapability.resolve();\n }\n\n requestDataRange(begin, end) {\n unreachable(\"Abstract method PDFDataRangeTransport.requestDataRange\");\n }\n\n abort() {}\n}\n\n/**\n * Proxy to a `PDFDocument` in the worker thread.\n */\nclass PDFDocumentProxy {\n constructor(pdfInfo, transport) {\n this._pdfInfo = pdfInfo;\n this._transport = transport;\n }\n\n /**\n * @type {AnnotationStorage} Storage for annotation data in forms.\n */\n get annotationStorage() {\n return this._transport.annotationStorage;\n }\n\n /**\n * @type {number} Total number of pages in the PDF file.\n */\n get numPages() {\n return this._pdfInfo.numPages;\n }\n\n /**\n * @type {Array} A (not guaranteed to be) unique ID to\n * identify the PDF document.\n * NOTE: The first element will always be defined for all PDF documents,\n * whereas the second element is only defined for *modified* PDF documents.\n */\n get fingerprints() {\n return this._pdfInfo.fingerprints;\n }\n\n /**\n * @typedef {Object} PDFDocumentStats\n * @property {Object} streamTypes - Used stream types in the\n * document (an item is set to true if specific stream ID was used in the\n * document).\n * @property {Object} fontTypes - Used font types in the\n * document (an item is set to true if specific font ID was used in the\n * document).\n */\n\n /**\n * @type {PDFDocumentStats | null} The current statistics about document\n * structures, or `null` when no statistics exists.\n */\n get stats() {\n return this._transport.stats;\n }\n\n /**\n * @type {boolean} True if only XFA form.\n */\n get isPureXfa() {\n return !!this._transport._htmlForXfa;\n }\n\n /**\n * NOTE: This is (mostly) intended to support printing of XFA forms.\n *\n * @type {Object | null} An object representing a HTML tree structure\n * to render the XFA, or `null` when no XFA form exists.\n */\n get allXfaHtml() {\n return this._transport._htmlForXfa;\n }\n\n /**\n * @param {number} pageNumber - The page number to get. The first page is 1.\n * @returns {Promise} A promise that is resolved with\n * a {@link PDFPageProxy} object.\n */\n getPage(pageNumber) {\n return this._transport.getPage(pageNumber);\n }\n\n /**\n * @param {RefProxy} ref - The page reference.\n * @returns {Promise} A promise that is resolved with the page index,\n * starting from zero, that is associated with the reference.\n */\n getPageIndex(ref) {\n return this._transport.getPageIndex(ref);\n }\n\n /**\n * @returns {Promise>>} A promise that is resolved\n * with a mapping from named destinations to references.\n *\n * This can be slow for large documents. Use `getDestination` instead.\n */\n getDestinations() {\n return this._transport.getDestinations();\n }\n\n /**\n * @param {string} id - The named destination to get.\n * @returns {Promise | null>} A promise that is resolved with all\n * information of the given named destination, or `null` when the named\n * destination is not present in the PDF file.\n */\n getDestination(id) {\n return this._transport.getDestination(id);\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with\n * an {Array} containing the page labels that correspond to the page\n * indexes, or `null` when no page labels are present in the PDF file.\n */\n getPageLabels() {\n return this._transport.getPageLabels();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a {string}\n * containing the page layout name.\n */\n getPageLayout() {\n return this._transport.getPageLayout();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a {string}\n * containing the page mode name.\n */\n getPageMode() {\n return this._transport.getPageMode();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an\n * {Object} containing the viewer preferences, or `null` when no viewer\n * preferences are present in the PDF file.\n */\n getViewerPreferences() {\n return this._transport.getViewerPreferences();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an {Array}\n * containing the destination, or `null` when no open action is present\n * in the PDF.\n */\n getOpenAction() {\n return this._transport.getOpenAction();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a lookup table\n * for mapping named attachments to their content.\n */\n getAttachments() {\n return this._transport.getAttachments();\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with\n * an {Array} of all the JavaScript strings in the name tree, or `null`\n * if no JavaScript exists.\n */\n getJavaScript() {\n return this._transport.getJavaScript();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with\n * an {Object} with the JavaScript actions:\n * - from the name tree (like getJavaScript);\n * - from A or AA entries in the catalog dictionary.\n * , or `null` if no JavaScript exists.\n */\n getJSActions() {\n return this._transport.getDocJSActions();\n }\n\n /**\n * @typedef {Object} OutlineNode\n * @property {string} title\n * @property {boolean} bold\n * @property {boolean} italic\n * @property {Uint8ClampedArray} color - The color in RGB format to use for\n * display purposes.\n * @property {string | Array | null} dest\n * @property {string | null} url\n * @property {string | undefined} unsafeUrl\n * @property {boolean | undefined} newWindow\n * @property {number | undefined} count\n * @property {Array} items\n */\n\n /**\n * @returns {Promise>} A promise that is resolved with an\n * {Array} that is a tree outline (if it has one) of the PDF file.\n */\n getOutline() {\n return this._transport.getOutline();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with\n * an {@link OptionalContentConfig} that contains all the optional content\n * groups (assuming that the document has any).\n */\n getOptionalContentConfig() {\n return this._transport.getOptionalContentConfig();\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with\n * an {Array} that contains the permission flags for the PDF document, or\n * `null` when no permissions are present in the PDF file.\n */\n getPermissions() {\n return this._transport.getPermissions();\n }\n\n /**\n * @returns {Promise<{ info: Object, metadata: Metadata }>} A promise that is\n * resolved with an {Object} that has `info` and `metadata` properties.\n * `info` is an {Object} filled with anything available in the information\n * dictionary and similarly `metadata` is a {Metadata} object with\n * information from the metadata section of the PDF.\n */\n getMetadata() {\n return this._transport.getMetadata();\n }\n\n /**\n * @typedef {Object} MarkInfo\n * Properties correspond to Table 321 of the PDF 32000-1:2008 spec.\n * @property {boolean} Marked\n * @property {boolean} UserProperties\n * @property {boolean} Suspects\n */\n\n /**\n * @returns {Promise} A promise that is resolved with\n * a {MarkInfo} object that contains the MarkInfo flags for the PDF\n * document, or `null` when no MarkInfo values are present in the PDF file.\n */\n getMarkInfo() {\n return this._transport.getMarkInfo();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a\n * {Uint8Array} containing the raw data of the PDF document.\n */\n getData() {\n return this._transport.getData();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a\n * {Uint8Array} containing the full data of the saved document.\n */\n saveDocument() {\n return this._transport.saveDocument();\n }\n\n /**\n * @returns {Promise<{ length: number }>} A promise that is resolved when the\n * document's data is loaded. It is resolved with an {Object} that contains\n * the `length` property that indicates size of the PDF data in bytes.\n */\n getDownloadInfo() {\n return this._transport.downloadInfoCapability.promise;\n }\n\n /**\n * Cleans up resources allocated by the document on both the main and worker\n * threads.\n *\n * NOTE: Do not, under any circumstances, call this method when rendering is\n * currently ongoing since that may lead to rendering errors.\n *\n * @param {boolean} [keepLoadedFonts] - Let fonts remain attached to the DOM.\n * NOTE: This will increase persistent memory usage, hence don't use this\n * option unless absolutely necessary. The default value is `false`.\n * @returns {Promise} A promise that is resolved when clean-up has finished.\n */\n cleanup(keepLoadedFonts = false) {\n return this._transport.startCleanup(keepLoadedFonts || this.isPureXfa);\n }\n\n /**\n * Destroys the current document instance and terminates the worker.\n */\n destroy() {\n return this.loadingTask.destroy();\n }\n\n /**\n * @type {DocumentInitParameters} A subset of the current\n * {DocumentInitParameters}, which are needed in the viewer.\n */\n get loadingParams() {\n return this._transport.loadingParams;\n }\n\n /**\n * @type {PDFDocumentLoadingTask} The loadingTask for the current document.\n */\n get loadingTask() {\n return this._transport.loadingTask;\n }\n\n /**\n * @returns {Promise> | null>} A promise that is\n * resolved with an {Object} containing /AcroForm field data for the JS\n * sandbox, or `null` when no field data is present in the PDF file.\n */\n getFieldObjects() {\n return this._transport.getFieldObjects();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with `true`\n * if some /AcroForm fields have JavaScript actions.\n */\n hasJSActions() {\n return this._transport.hasJSActions();\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with an\n * {Array} containing IDs of annotations that have a calculation\n * action, or `null` when no such annotations are present in the PDF file.\n */\n getCalculationOrderIds() {\n return this._transport.getCalculationOrderIds();\n }\n}\n\n/**\n * Page getViewport parameters.\n *\n * @typedef {Object} GetViewportParameters\n * @property {number} scale - The desired scale of the viewport.\n * @property {number} [rotation] - The desired rotation, in degrees, of\n * the viewport. If omitted it defaults to the page rotation.\n * @property {number} [offsetX] - The horizontal, i.e. x-axis, offset.\n * The default value is `0`.\n * @property {number} [offsetY] - The vertical, i.e. y-axis, offset.\n * The default value is `0`.\n * @property {boolean} [dontFlip] - If true, the y-axis will not be\n * flipped. The default value is `false`.\n */\n\n/**\n * Page getTextContent parameters.\n *\n * @typedef {Object} getTextContentParameters\n * @property {boolean} disableCombineTextItems - Do not attempt to combine\n * same line {@link TextItem}'s. The default value is `false`.\n * @property {boolean} [includeMarkedContent] - When true include marked\n * content items in the items array of TextContent. The default is `false`.\n */\n\n/**\n * Page text content.\n *\n * @typedef {Object} TextContent\n * @property {Array} items - Array of\n * {@link TextItem} and {@link TextMarkedContent} objects. TextMarkedContent\n * items are included when includeMarkedContent is true.\n * @property {Object} styles - {@link TextStyle} objects,\n * indexed by font name.\n */\n\n/**\n * Page text content part.\n *\n * @typedef {Object} TextItem\n * @property {string} str - Text content.\n * @property {string} dir - Text direction: 'ttb', 'ltr' or 'rtl'.\n * @property {Array} transform - Transformation matrix.\n * @property {number} width - Width in device space.\n * @property {number} height - Height in device space.\n * @property {string} fontName - Font name used by PDF.js for converted font.\n * @property {boolean} hasEOL - Indicating if the text content is followed by a\n * line-break.\n */\n\n/**\n * Page text marked content part.\n *\n * @typedef {Object} TextMarkedContent\n * @property {string} type - Either 'beginMarkedContent',\n * 'beginMarkedContentProps', or 'endMarkedContent'.\n * @property {string} id - The marked content identifier. Only used for type\n * 'beginMarkedContentProps'.\n */\n\n/**\n * Text style.\n *\n * @typedef {Object} TextStyle\n * @property {number} ascent - Font ascent.\n * @property {number} descent - Font descent.\n * @property {boolean} vertical - Whether or not the text is in vertical mode.\n * @property {string} fontFamily - The possible font family.\n */\n\n/**\n * Page annotation parameters.\n *\n * @typedef {Object} GetAnnotationsParameters\n * @property {string} [intent] - Determines the annotations that are fetched,\n * can be 'display' (viewable annotations), 'print' (printable annotations),\n * or 'any' (all annotations). The default value is 'display'.\n */\n\n/**\n * Page render parameters.\n *\n * @typedef {Object} RenderParameters\n * @property {Object} canvasContext - A 2D context of a DOM Canvas object.\n * @property {PageViewport} viewport - Rendering viewport obtained by calling\n * the `PDFPageProxy.getViewport` method.\n * @property {string} [intent] - Rendering intent, can be 'display', 'print',\n * or 'any'. The default value is 'display'.\n * @property {number} [annotationMode] Controls which annotations are rendered\n * onto the canvas, for annotations with appearance-data; the values from\n * {@link AnnotationMode} should be used. The following values are supported:\n * - `AnnotationMode.DISABLE`, which disables all annotations.\n * - `AnnotationMode.ENABLE`, which includes all possible annotations (thus\n * it also depends on the `intent`-option, see above).\n * - `AnnotationMode.ENABLE_FORMS`, which excludes annotations that contain\n * interactive form elements (those will be rendered in the display layer).\n * - `AnnotationMode.ENABLE_STORAGE`, which includes all possible annotations\n * (as above) but where interactive form elements are updated with data\n * from the {@link AnnotationStorage}-instance; useful e.g. for printing.\n * The default value is `AnnotationMode.ENABLE`.\n * @property {Array} [transform] - Additional transform, applied just\n * before viewport transform.\n * @property {Object} [canvasFactory] - The factory instance that will be used\n * when creating canvases. The default value is {new DOMCanvasFactory()}.\n * @property {Object | string} [background] - Background to use for the canvas.\n * Any valid `canvas.fillStyle` can be used: a `DOMString` parsed as CSS\n * value, a `CanvasGradient` object (a linear or radial gradient) or\n * a `CanvasPattern` object (a repetitive image). The default value is\n * 'rgb(255,255,255)'.\n *\n * NOTE: This option may be partially, or completely, ignored when the\n * `pageColors`-option is used.\n * @property {Object} [pageColors] - Overwrites background and foreground colors\n * with user defined ones in order to improve readability in high contrast\n * mode.\n * @property {Promise} [optionalContentConfigPromise] -\n * A promise that should resolve with an {@link OptionalContentConfig}\n * created from `PDFDocumentProxy.getOptionalContentConfig`. If `null`,\n * the configuration will be fetched automatically with the default visibility\n * states set.\n * @property {Map} [annotationCanvasMap] - Map some\n * annotation ids with canvases used to render them.\n * @property {PrintAnnotationStorage} [printAnnotationStorage]\n */\n\n/**\n * Page getOperatorList parameters.\n *\n * @typedef {Object} GetOperatorListParameters\n * @property {string} [intent] - Rendering intent, can be 'display', 'print',\n * or 'any'. The default value is 'display'.\n * @property {number} [annotationMode] Controls which annotations are included\n * in the operatorList, for annotations with appearance-data; the values from\n * {@link AnnotationMode} should be used. The following values are supported:\n * - `AnnotationMode.DISABLE`, which disables all annotations.\n * - `AnnotationMode.ENABLE`, which includes all possible annotations (thus\n * it also depends on the `intent`-option, see above).\n * - `AnnotationMode.ENABLE_FORMS`, which excludes annotations that contain\n * interactive form elements (those will be rendered in the display layer).\n * - `AnnotationMode.ENABLE_STORAGE`, which includes all possible annotations\n * (as above) but where interactive form elements are updated with data\n * from the {@link AnnotationStorage}-instance; useful e.g. for printing.\n * The default value is `AnnotationMode.ENABLE`.\n * @property {PrintAnnotationStorage} [printAnnotationStorage]\n */\n\n/**\n * Structure tree node. The root node will have a role \"Root\".\n *\n * @typedef {Object} StructTreeNode\n * @property {Array} children - Array of\n * {@link StructTreeNode} and {@link StructTreeContent} objects.\n * @property {string} role - element's role, already mapped if a role map exists\n * in the PDF.\n */\n\n/**\n * Structure tree content.\n *\n * @typedef {Object} StructTreeContent\n * @property {string} type - either \"content\" for page and stream structure\n * elements or \"object\" for object references.\n * @property {string} id - unique id that will map to the text layer.\n */\n\n/**\n * PDF page operator list.\n *\n * @typedef {Object} PDFOperatorList\n * @property {Array} fnArray - Array containing the operator functions.\n * @property {Array} argsArray - Array containing the arguments of the\n * functions.\n */\n\n/**\n * Proxy to a `PDFPage` in the worker thread.\n */\nclass PDFPageProxy {\n constructor(pageIndex, pageInfo, transport, ownerDocument, pdfBug = false) {\n this._pageIndex = pageIndex;\n this._pageInfo = pageInfo;\n this._ownerDocument = ownerDocument;\n this._transport = transport;\n this._stats = pdfBug ? new StatTimer() : null;\n this._pdfBug = pdfBug;\n /** @type {PDFObjects} */\n this.commonObjs = transport.commonObjs;\n this.objs = new PDFObjects();\n\n this._bitmaps = new Set();\n\n this.cleanupAfterRender = false;\n this.pendingCleanup = false;\n this._intentStates = new Map();\n this._annotationPromises = new Map();\n this.destroyed = false;\n }\n\n /**\n * @type {number} Page number of the page. First page is 1.\n */\n get pageNumber() {\n return this._pageIndex + 1;\n }\n\n /**\n * @type {number} The number of degrees the page is rotated clockwise.\n */\n get rotate() {\n return this._pageInfo.rotate;\n }\n\n /**\n * @type {RefProxy | null} The reference that points to this page.\n */\n get ref() {\n return this._pageInfo.ref;\n }\n\n /**\n * @type {number} The default size of units in 1/72nds of an inch.\n */\n get userUnit() {\n return this._pageInfo.userUnit;\n }\n\n /**\n * @type {Array} An array of the visible portion of the PDF page in\n * user space units [x1, y1, x2, y2].\n */\n get view() {\n return this._pageInfo.view;\n }\n\n /**\n * @param {GetViewportParameters} params - Viewport parameters.\n * @returns {PageViewport} Contains 'width' and 'height' properties\n * along with transforms required for rendering.\n */\n getViewport({\n scale,\n rotation = this.rotate,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false,\n } = {}) {\n return new PageViewport({\n viewBox: this.view,\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip,\n });\n }\n\n /**\n * @param {GetAnnotationsParameters} params - Annotation parameters.\n * @returns {Promise>} A promise that is resolved with an\n * {Array} of the annotation objects.\n */\n getAnnotations({ intent = \"display\" } = {}) {\n const intentArgs = this._transport.getRenderingIntent(intent);\n\n let promise = this._annotationPromises.get(intentArgs.cacheKey);\n if (!promise) {\n promise = this._transport.getAnnotations(\n this._pageIndex,\n intentArgs.renderingIntent\n );\n this._annotationPromises.set(intentArgs.cacheKey, promise);\n }\n return promise;\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an\n * {Object} with JS actions.\n */\n getJSActions() {\n return (this._jsActionsPromise ||= this._transport.getPageJSActions(\n this._pageIndex\n ));\n }\n\n /**\n * @returns {Promise} A promise that is resolved with\n * an {Object} with a fake DOM object (a tree structure where elements\n * are {Object} with a name, attributes (class, style, ...), value and\n * children, very similar to a HTML DOM tree), or `null` if no XFA exists.\n */\n async getXfa() {\n return this._transport._htmlForXfa?.children[this._pageIndex] || null;\n }\n\n /**\n * Begins the process of rendering a page to the desired context.\n *\n * @param {RenderParameters} params - Page render parameters.\n * @returns {RenderTask} An object that contains a promise that is\n * resolved when the page finishes rendering.\n */\n render({\n canvasContext,\n viewport,\n intent = \"display\",\n annotationMode = AnnotationMode.ENABLE,\n transform = null,\n canvasFactory = null,\n background = null,\n optionalContentConfigPromise = null,\n annotationCanvasMap = null,\n pageColors = null,\n printAnnotationStorage = null,\n }) {\n this._stats?.time(\"Overall\");\n\n const intentArgs = this._transport.getRenderingIntent(\n intent,\n annotationMode,\n printAnnotationStorage\n );\n // If there was a pending destroy, cancel it so no cleanup happens during\n // this call to render.\n this.pendingCleanup = false;\n\n if (!optionalContentConfigPromise) {\n optionalContentConfigPromise = this._transport.getOptionalContentConfig();\n }\n\n let intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n\n // Ensure that a pending `streamReader` cancel timeout is always aborted.\n if (intentState.streamReaderCancelTimeout) {\n clearTimeout(intentState.streamReaderCancelTimeout);\n intentState.streamReaderCancelTimeout = null;\n }\n\n const canvasFactoryInstance =\n canvasFactory ||\n new DefaultCanvasFactory({ ownerDocument: this._ownerDocument });\n const intentPrint = !!(\n intentArgs.renderingIntent & RenderingIntentFlag.PRINT\n );\n\n // If there's no displayReadyCapability yet, then the operatorList\n // was never requested before. Make the request and create the promise.\n if (!intentState.displayReadyCapability) {\n intentState.displayReadyCapability = createPromiseCapability();\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n separateAnnots: null,\n };\n\n this._stats?.time(\"Page Request\");\n this._pumpOperatorList(intentArgs);\n }\n\n const complete = error => {\n intentState.renderTasks.delete(internalRenderTask);\n\n // Attempt to reduce memory usage during *printing*, by always running\n // cleanup once rendering has finished (regardless of cleanupAfterRender).\n if (this.cleanupAfterRender || intentPrint) {\n this.pendingCleanup = true;\n }\n this._tryCleanup();\n\n if (error) {\n internalRenderTask.capability.reject(error);\n\n this._abortOperatorList({\n intentState,\n reason: error instanceof Error ? error : new Error(error),\n });\n } else {\n internalRenderTask.capability.resolve();\n }\n\n this._stats?.timeEnd(\"Rendering\");\n this._stats?.timeEnd(\"Overall\");\n };\n\n const internalRenderTask = new InternalRenderTask({\n callback: complete,\n // Only include the required properties, and *not* the entire object.\n params: {\n canvasContext,\n viewport,\n transform,\n background,\n },\n objs: this.objs,\n commonObjs: this.commonObjs,\n annotationCanvasMap,\n operatorList: intentState.operatorList,\n pageIndex: this._pageIndex,\n canvasFactory: canvasFactoryInstance,\n useRequestAnimationFrame: !intentPrint,\n pdfBug: this._pdfBug,\n pageColors,\n });\n\n (intentState.renderTasks ||= new Set()).add(internalRenderTask);\n const renderTask = internalRenderTask.task;\n\n Promise.all([\n intentState.displayReadyCapability.promise,\n optionalContentConfigPromise,\n ])\n .then(([transparency, optionalContentConfig]) => {\n if (this.pendingCleanup) {\n complete();\n return;\n }\n this._stats?.time(\"Rendering\");\n\n internalRenderTask.initializeGraphics({\n transparency,\n optionalContentConfig,\n });\n internalRenderTask.operatorListChanged();\n })\n .catch(complete);\n\n return renderTask;\n }\n\n /**\n * @param {GetOperatorListParameters} params - Page getOperatorList\n * parameters.\n * @returns {Promise} A promise resolved with an\n * {@link PDFOperatorList} object that represents the page's operator list.\n */\n getOperatorList({\n intent = \"display\",\n annotationMode = AnnotationMode.ENABLE,\n printAnnotationStorage = null,\n } = {}) {\n function operatorListChanged() {\n if (intentState.operatorList.lastChunk) {\n intentState.opListReadCapability.resolve(intentState.operatorList);\n\n intentState.renderTasks.delete(opListTask);\n }\n }\n\n const intentArgs = this._transport.getRenderingIntent(\n intent,\n annotationMode,\n printAnnotationStorage,\n /* isOpList = */ true\n );\n let intentState = this._intentStates.get(intentArgs.cacheKey);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(intentArgs.cacheKey, intentState);\n }\n let opListTask;\n\n if (!intentState.opListReadCapability) {\n opListTask = Object.create(null);\n opListTask.operatorListChanged = operatorListChanged;\n intentState.opListReadCapability = createPromiseCapability();\n (intentState.renderTasks ||= new Set()).add(opListTask);\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n separateAnnots: null,\n };\n\n this._stats?.time(\"Page Request\");\n this._pumpOperatorList(intentArgs);\n }\n return intentState.opListReadCapability.promise;\n }\n\n /**\n * NOTE: All occurrences of whitespace will be replaced by\n * standard spaces (0x20).\n *\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @returns {ReadableStream} Stream for reading text content chunks.\n */\n streamTextContent({\n disableCombineTextItems = false,\n includeMarkedContent = false,\n } = {}) {\n const TEXT_CONTENT_CHUNK_SIZE = 100;\n\n return this._transport.messageHandler.sendWithStream(\n \"GetTextContent\",\n {\n pageIndex: this._pageIndex,\n combineTextItems: disableCombineTextItems !== true,\n includeMarkedContent: includeMarkedContent === true,\n },\n {\n highWaterMark: TEXT_CONTENT_CHUNK_SIZE,\n size(textContent) {\n return textContent.items.length;\n },\n }\n );\n }\n\n /**\n * NOTE: All occurrences of whitespace will be replaced by\n * standard spaces (0x20).\n *\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @returns {Promise} A promise that is resolved with a\n * {@link TextContent} object that represents the page's text content.\n */\n getTextContent(params = {}) {\n if (this._transport._htmlForXfa) {\n // TODO: We need to revisit this once the XFA foreground patch lands and\n // only do this for non-foreground XFA.\n return this.getXfa().then(xfa => {\n return XfaText.textContent(xfa);\n });\n }\n const readableStream = this.streamTextContent(params);\n\n return new Promise(function (resolve, reject) {\n function pump() {\n reader.read().then(function ({ value, done }) {\n if (done) {\n resolve(textContent);\n return;\n }\n Object.assign(textContent.styles, value.styles);\n textContent.items.push(...value.items);\n pump();\n }, reject);\n }\n\n const reader = readableStream.getReader();\n const textContent = {\n items: [],\n styles: Object.create(null),\n };\n pump();\n });\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a\n * {@link StructTreeNode} object that represents the page's structure tree,\n * or `null` when no structure tree is present for the current page.\n */\n getStructTree() {\n return (this._structTreePromise ||= this._transport.getStructTree(\n this._pageIndex\n ));\n }\n\n /**\n * Destroys the page object.\n * @private\n */\n _destroy() {\n this.destroyed = true;\n\n const waitOn = [];\n for (const intentState of this._intentStates.values()) {\n this._abortOperatorList({\n intentState,\n reason: new Error(\"Page was destroyed.\"),\n force: true,\n });\n\n if (intentState.opListReadCapability) {\n // Avoid errors below, since the renderTasks are just stubs.\n continue;\n }\n for (const internalRenderTask of intentState.renderTasks) {\n waitOn.push(internalRenderTask.completed);\n internalRenderTask.cancel();\n }\n }\n this.objs.clear();\n for (const bitmap of this._bitmaps) {\n bitmap.close();\n }\n this._bitmaps.clear();\n this._annotationPromises.clear();\n this._jsActionsPromise = null;\n this._structTreePromise = null;\n this.pendingCleanup = false;\n return Promise.all(waitOn);\n }\n\n /**\n * Cleans up resources allocated by the page.\n *\n * @param {boolean} [resetStats] - Reset page stats, if enabled.\n * The default value is `false`.\n * @returns {boolean} Indicates if clean-up was successfully run.\n */\n cleanup(resetStats = false) {\n this.pendingCleanup = true;\n return this._tryCleanup(resetStats);\n }\n\n /**\n * Attempts to clean up if rendering is in a state where that's possible.\n * @private\n */\n _tryCleanup(resetStats = false) {\n if (!this.pendingCleanup) {\n return false;\n }\n for (const { renderTasks, operatorList } of this._intentStates.values()) {\n if (renderTasks.size > 0 || !operatorList.lastChunk) {\n return false;\n }\n }\n\n this._intentStates.clear();\n this.objs.clear();\n this._annotationPromises.clear();\n this._jsActionsPromise = null;\n this._structTreePromise = null;\n if (resetStats && this._stats) {\n this._stats = new StatTimer();\n }\n for (const bitmap of this._bitmaps) {\n bitmap.close();\n }\n this._bitmaps.clear();\n this.pendingCleanup = false;\n return true;\n }\n\n /**\n * @private\n */\n _startRenderPage(transparency, cacheKey) {\n const intentState = this._intentStates.get(cacheKey);\n if (!intentState) {\n return; // Rendering was cancelled.\n }\n this._stats?.timeEnd(\"Page Request\");\n\n // TODO Refactor RenderPageRequest to separate rendering\n // and operator list logic\n intentState.displayReadyCapability?.resolve(transparency);\n }\n\n /**\n * @private\n */\n _renderPageChunk(operatorListChunk, intentState) {\n // Add the new chunk to the current operator list.\n for (let i = 0, ii = operatorListChunk.length; i < ii; i++) {\n intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);\n intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);\n }\n intentState.operatorList.lastChunk = operatorListChunk.lastChunk;\n intentState.operatorList.separateAnnots = operatorListChunk.separateAnnots;\n\n // Notify all the rendering tasks there are more operators to be consumed.\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n\n if (operatorListChunk.lastChunk) {\n this._tryCleanup();\n }\n }\n\n /**\n * @private\n */\n _pumpOperatorList({ renderingIntent, cacheKey, annotationStorageMap }) {\n if (\n typeof PDFJSDev === \"undefined\" ||\n PDFJSDev.test(\"!PRODUCTION || TESTING\")\n ) {\n assert(\n Number.isInteger(renderingIntent) && renderingIntent > 0,\n '_pumpOperatorList: Expected valid \"renderingIntent\" argument.'\n );\n }\n\n const readableStream = this._transport.messageHandler.sendWithStream(\n \"GetOperatorList\",\n {\n pageIndex: this._pageIndex,\n intent: renderingIntent,\n cacheKey,\n annotationStorage: annotationStorageMap,\n }\n );\n const reader = readableStream.getReader();\n\n const intentState = this._intentStates.get(cacheKey);\n intentState.streamReader = reader;\n\n const pump = () => {\n reader.read().then(\n ({ value, done }) => {\n if (done) {\n intentState.streamReader = null;\n return;\n }\n if (this._transport.destroyed) {\n return; // Ignore any pending requests if the worker was terminated.\n }\n this._renderPageChunk(value, intentState);\n pump();\n },\n reason => {\n intentState.streamReader = null;\n\n if (this._transport.destroyed) {\n return; // Ignore any pending requests if the worker was terminated.\n }\n if (intentState.operatorList) {\n // Mark operator list as complete.\n intentState.operatorList.lastChunk = true;\n\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n this._tryCleanup();\n }\n\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.reject(reason);\n } else if (intentState.opListReadCapability) {\n intentState.opListReadCapability.reject(reason);\n } else {\n throw reason;\n }\n }\n );\n };\n pump();\n }\n\n /**\n * @private\n */\n _abortOperatorList({ intentState, reason, force = false }) {\n if (\n typeof PDFJSDev === \"undefined\" ||\n PDFJSDev.test(\"!PRODUCTION || TESTING\")\n ) {\n assert(\n reason instanceof Error,\n '_abortOperatorList: Expected valid \"reason\" argument.'\n );\n }\n\n if (!intentState.streamReader) {\n return;\n }\n if (!force) {\n // Ensure that an Error occurring in *only* one `InternalRenderTask`, e.g.\n // multiple render() calls on the same canvas, won't break all rendering.\n if (intentState.renderTasks.size > 0) {\n return;\n }\n // Don't immediately abort parsing on the worker-thread when rendering is\n // cancelled, since that will unnecessarily delay re-rendering when (for\n // partially parsed pages) e.g. zooming/rotation occurs in the viewer.\n if (reason instanceof RenderingCancelledException) {\n intentState.streamReaderCancelTimeout = setTimeout(() => {\n this._abortOperatorList({ intentState, reason, force: true });\n intentState.streamReaderCancelTimeout = null;\n }, RENDERING_CANCELLED_TIMEOUT);\n return;\n }\n }\n intentState.streamReader\n .cancel(new AbortException(reason.message))\n .catch(() => {\n // Avoid \"Uncaught promise\" messages in the console.\n });\n intentState.streamReader = null;\n\n if (this._transport.destroyed) {\n return; // Ignore any pending requests if the worker was terminated.\n }\n // Remove the current `intentState`, since a cancelled `getOperatorList`\n // call on the worker-thread cannot be re-started...\n for (const [curCacheKey, curIntentState] of this._intentStates) {\n if (curIntentState === intentState) {\n this._intentStates.delete(curCacheKey);\n break;\n }\n }\n // ... and force clean-up to ensure that any old state is always removed.\n this.cleanup();\n }\n\n /**\n * @type {Object} Returns page stats, if enabled; returns `null` otherwise.\n */\n get stats() {\n return this._stats;\n }\n}\n\nclass LoopbackPort {\n #listeners = [];\n\n #deferred = Promise.resolve();\n\n postMessage(obj, transfers) {\n const event = {\n data: structuredClone(obj, transfers),\n };\n\n this.#deferred.then(() => {\n for (const listener of this.#listeners) {\n listener.call(this, event);\n }\n });\n }\n\n addEventListener(name, listener) {\n this.#listeners.push(listener);\n }\n\n removeEventListener(name, listener) {\n const i = this.#listeners.indexOf(listener);\n this.#listeners.splice(i, 1);\n }\n\n terminate() {\n this.#listeners.length = 0;\n }\n}\n\n/**\n * @typedef {Object} PDFWorkerParameters\n * @property {string} [name] - The name of the worker.\n * @property {Object} [port] - The `workerPort` object.\n * @property {number} [verbosity] - Controls the logging level;\n * the constants from {@link VerbosityLevel} should be used.\n */\n\nconst PDFWorkerUtil = {\n isWorkerDisabled: false,\n fallbackWorkerSrc: null,\n fakeWorkerId: 0,\n};\nif (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) {\n // eslint-disable-next-line no-undef\n if (isNodeJS && typeof __non_webpack_require__ === \"function\") {\n // Workers aren't supported in Node.js, force-disabling them there.\n PDFWorkerUtil.isWorkerDisabled = true;\n\n PDFWorkerUtil.fallbackWorkerSrc = PDFJSDev.test(\"LIB\")\n ? \"../pdf.worker.js\"\n : \"./pdf.worker.js\";\n } else if (typeof document === \"object\") {\n const pdfjsFilePath = document?.currentScript?.src;\n if (pdfjsFilePath) {\n PDFWorkerUtil.fallbackWorkerSrc = pdfjsFilePath.replace(\n /(\\.(?:min\\.)?js)(\\?.*)?$/i,\n \".worker$1$2\"\n );\n }\n }\n\n // Check if URLs have the same origin. For non-HTTP based URLs, returns false.\n PDFWorkerUtil.isSameOrigin = function (baseUrl, otherUrl) {\n let base;\n try {\n base = new URL(baseUrl);\n if (!base.origin || base.origin === \"null\") {\n return false; // non-HTTP url\n }\n } catch (e) {\n return false;\n }\n\n const other = new URL(otherUrl, base);\n return base.origin === other.origin;\n };\n\n PDFWorkerUtil.createCDNWrapper = function (url) {\n // We will rely on blob URL's property to specify origin.\n // We want this function to fail in case if createObjectURL or Blob do not\n // exist or fail for some reason -- our Worker creation will fail anyway.\n const wrapper = `importScripts(\"${url}\");`;\n return URL.createObjectURL(new Blob([wrapper]));\n };\n}\n\n/**\n * PDF.js web worker abstraction that controls the instantiation of PDF\n * documents. Message handlers are used to pass information from the main\n * thread to the worker thread and vice versa. If the creation of a web\n * worker is not possible, a \"fake\" worker will be used instead.\n *\n * @param {PDFWorkerParameters} params - The worker initialization parameters.\n */\nclass PDFWorker {\n static #workerPorts = new WeakMap();\n\n constructor({\n name = null,\n port = null,\n verbosity = getVerbosityLevel(),\n } = {}) {\n if (port && PDFWorker.#workerPorts.has(port)) {\n throw new Error(\"Cannot use more than one PDFWorker per port.\");\n }\n\n this.name = name;\n this.destroyed = false;\n this.verbosity = verbosity;\n\n this._readyCapability = createPromiseCapability();\n this._port = null;\n this._webWorker = null;\n this._messageHandler = null;\n\n if (port) {\n PDFWorker.#workerPorts.set(port, this);\n this._initializeFromPort(port);\n return;\n }\n this._initialize();\n }\n\n /**\n * Promise for worker initialization completion.\n * @type {Promise}\n */\n get promise() {\n return this._readyCapability.promise;\n }\n\n /**\n * The current `workerPort`, when it exists.\n * @type {Worker}\n */\n get port() {\n return this._port;\n }\n\n /**\n * The current MessageHandler-instance.\n * @type {MessageHandler}\n */\n get messageHandler() {\n return this._messageHandler;\n }\n\n _initializeFromPort(port) {\n this._port = port;\n this._messageHandler = new MessageHandler(\"main\", \"worker\", port);\n this._messageHandler.on(\"ready\", function () {\n // Ignoring \"ready\" event -- MessageHandler should already be initialized\n // and ready to accept messages.\n });\n this._readyCapability.resolve();\n // Send global setting, e.g. verbosity level.\n this._messageHandler.send(\"configure\", {\n verbosity: this.verbosity,\n });\n }\n\n _initialize() {\n // If worker support isn't disabled explicit and the browser has worker\n // support, create a new web worker and test if it/the browser fulfills\n // all requirements to run parts of pdf.js in a web worker.\n // Right now, the requirement is, that an Uint8Array is still an\n // Uint8Array as it arrives on the worker. (Chrome added this with v.15.)\n if (\n !PDFWorkerUtil.isWorkerDisabled &&\n !PDFWorker._mainThreadWorkerMessageHandler\n ) {\n let { workerSrc } = PDFWorker;\n\n try {\n // Wraps workerSrc path into blob URL, if the former does not belong\n // to the same origin.\n if (\n typeof PDFJSDev !== \"undefined\" &&\n PDFJSDev.test(\"GENERIC\") &&\n !PDFWorkerUtil.isSameOrigin(window.location.href, workerSrc)\n ) {\n workerSrc = PDFWorkerUtil.createCDNWrapper(\n new URL(workerSrc, window.location).href\n );\n }\n\n // Some versions of FF can't create a worker on localhost, see:\n // https://bugzilla.mozilla.org/show_bug.cgi?id=683280\n const worker = new Worker(workerSrc);\n const messageHandler = new MessageHandler(\"main\", \"worker\", worker);\n const terminateEarly = () => {\n worker.removeEventListener(\"error\", onWorkerError);\n messageHandler.destroy();\n worker.terminate();\n if (this.destroyed) {\n this._readyCapability.reject(new Error(\"Worker was destroyed\"));\n } else {\n // Fall back to fake worker if the termination is caused by an\n // error (e.g. NetworkError / SecurityError).\n this._setupFakeWorker();\n }\n };\n\n const onWorkerError = () => {\n if (!this._webWorker) {\n // Worker failed to initialize due to an error. Clean up and fall\n // back to the fake worker.\n terminateEarly();\n }\n };\n worker.addEventListener(\"error\", onWorkerError);\n\n messageHandler.on(\"test\", data => {\n worker.removeEventListener(\"error\", onWorkerError);\n if (this.destroyed) {\n terminateEarly();\n return; // worker was destroyed\n }\n if (data) {\n this._messageHandler = messageHandler;\n this._port = worker;\n this._webWorker = worker;\n\n this._readyCapability.resolve();\n // Send global setting, e.g. verbosity level.\n messageHandler.send(\"configure\", {\n verbosity: this.verbosity,\n });\n } else {\n this._setupFakeWorker();\n messageHandler.destroy();\n worker.terminate();\n }\n });\n\n messageHandler.on(\"ready\", data => {\n worker.removeEventListener(\"error\", onWorkerError);\n if (this.destroyed) {\n terminateEarly();\n return; // worker was destroyed\n }\n try {\n sendTest();\n } catch (e) {\n // We need fallback to a faked worker.\n this._setupFakeWorker();\n }\n });\n\n const sendTest = () => {\n const testObj = new Uint8Array();\n // Ensure that we can use `postMessage` transfers.\n messageHandler.send(\"test\", testObj, [testObj.buffer]);\n };\n\n // It might take time for the worker to initialize. We will try to send\n // the \"test\" message immediately, and once the \"ready\" message arrives.\n // The worker shall process only the first received \"test\" message.\n sendTest();\n return;\n } catch (e) {\n info(\"The worker has been disabled.\");\n }\n }\n // Either workers are disabled, not supported or have thrown an exception.\n // Thus, we fallback to a faked worker.\n this._setupFakeWorker();\n }\n\n _setupFakeWorker() {\n if (!PDFWorkerUtil.isWorkerDisabled) {\n warn(\"Setting up fake worker.\");\n PDFWorkerUtil.isWorkerDisabled = true;\n }\n\n PDFWorker._setupFakeWorkerGlobal\n .then(WorkerMessageHandler => {\n if (this.destroyed) {\n this._readyCapability.reject(new Error(\"Worker was destroyed\"));\n return;\n }\n const port = new LoopbackPort();\n this._port = port;\n\n // All fake workers use the same port, making id unique.\n const id = `fake${PDFWorkerUtil.fakeWorkerId++}`;\n\n // If the main thread is our worker, setup the handling for the\n // messages -- the main thread sends to it self.\n const workerHandler = new MessageHandler(id + \"_worker\", id, port);\n WorkerMessageHandler.setup(workerHandler, port);\n\n const messageHandler = new MessageHandler(id, id + \"_worker\", port);\n this._messageHandler = messageHandler;\n this._readyCapability.resolve();\n // Send global setting, e.g. verbosity level.\n messageHandler.send(\"configure\", {\n verbosity: this.verbosity,\n });\n })\n .catch(reason => {\n this._readyCapability.reject(\n new Error(`Setting up fake worker failed: \"${reason.message}\".`)\n );\n });\n }\n\n /**\n * Destroys the worker instance.\n */\n destroy() {\n this.destroyed = true;\n if (this._webWorker) {\n // We need to terminate only web worker created resource.\n this._webWorker.terminate();\n this._webWorker = null;\n }\n PDFWorker.#workerPorts.delete(this._port);\n this._port = null;\n if (this._messageHandler) {\n this._messageHandler.destroy();\n this._messageHandler = null;\n }\n }\n\n /**\n * @param {PDFWorkerParameters} params - The worker initialization parameters.\n */\n static fromPort(params) {\n if (!params?.port) {\n throw new Error(\"PDFWorker.fromPort - invalid method signature.\");\n }\n if (this.#workerPorts.has(params.port)) {\n return this.#workerPorts.get(params.port);\n }\n return new PDFWorker(params);\n }\n\n /**\n * The current `workerSrc`, when it exists.\n * @type {string}\n */\n static get workerSrc() {\n if (GlobalWorkerOptions.workerSrc) {\n return GlobalWorkerOptions.workerSrc;\n }\n if (\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) &&\n PDFWorkerUtil.fallbackWorkerSrc !== null\n ) {\n if (!isNodeJS) {\n deprecated('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n return PDFWorkerUtil.fallbackWorkerSrc;\n }\n throw new Error('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n\n static get _mainThreadWorkerMessageHandler() {\n try {\n return globalThis.pdfjsWorker?.WorkerMessageHandler || null;\n } catch (ex) {\n return null;\n }\n }\n\n // Loads worker code into the main-thread.\n static get _setupFakeWorkerGlobal() {\n const loader = async () => {\n const mainWorkerMessageHandler = this._mainThreadWorkerMessageHandler;\n\n if (mainWorkerMessageHandler) {\n // The worker was already loaded using e.g. a `