{"version":3,"sources":["webpack://pdfjs-dist/build/pdf/webpack/universalModuleDefinition","webpack://pdfjs-dist/build/pdf/src/display/display_utils.js","webpack://pdfjs-dist/build/pdf/src/shared/util.js","webpack://pdfjs-dist/build/pdf/src/shared/compatibility.js","webpack://pdfjs-dist/build/pdf/src/shared/is_node.js","webpack://pdfjs-dist/build/pdf/src/display/base_factory.js","webpack://pdfjs-dist/build/pdf/src/display/api.js","webpack://pdfjs-dist/build/pdf/src/display/font_loader.js","webpack://pdfjs-dist/build/pdf/src/display/node_utils.js","webpack://pdfjs-dist/build/pdf/src/display/annotation_storage.js","webpack://pdfjs-dist/build/pdf/src/display/canvas.js","webpack://pdfjs-dist/build/pdf/src/display/pattern_helper.js","webpack://pdfjs-dist/build/pdf/src/display/worker_options.js","webpack://pdfjs-dist/build/pdf/src/shared/message_handler.js","webpack://pdfjs-dist/build/pdf/src/display/metadata.js","webpack://pdfjs-dist/build/pdf/src/display/optional_content_config.js","webpack://pdfjs-dist/build/pdf/src/display/transport_stream.js","webpack://pdfjs-dist/build/pdf/src/display/annotation_layer.js","webpack://pdfjs-dist/build/pdf/src/shared/scripting_utils.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/xfa_layer.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"],"names":["DEFAULT_LINK_REL","SVG_NS","constructor","ownerDocument","globalThis","_createCanvas","canvas","asTypedArray","isValidFetchUrl","document","response","fetch","stringToBytes","request","XMLHttpRequest","data","resolve","reject","_fetchData","cMapData","fetchData","_createSVG","offsetX","offsetY","dontFlip","centerX","viewBox","centerY","rotation","rotateA","rotateB","rotateC","rotateD","offsetCanvasX","Math","offsetCanvasY","width","height","clone","scale","convertToViewportPoint","convertToViewportRectangle","topLeft","rect","bottomRight","convertToPdfPoint","LinkTarget","NONE","SELF","BLANK","PARENT","TOP","enabled","assert","url","urlNullRemoved","removeNullCharacters","link","targetStr","ii","i","anchor","query","end","defaultFilename","isDataScheme","warn","reURI","reFilename","splitURI","suggestedFilename","decodeURIComponent","Object","time","name","Date","timeEnd","start","toString","outBuf","longest","duration","baseUrl","protocol","removeScriptElement","script","console","toDateObject","isString","pdfDateStringRegex","matches","year","parseInt","month","day","hour","minute","second","universalTimeRelation","offsetHour","offsetMinute","xfaPage","IDENTITY_MATRIX","FONT_IDENTITY_MATRIX","PermissionFlag","PRINT","MODIFY_CONTENTS","COPY","MODIFY_ANNOTATIONS","FILL_INTERACTIVE_FORMS","COPY_FOR_ACCESSIBILITY","ASSEMBLE","PRINT_HIGH_QUALITY","TextRenderingMode","FILL","STROKE","FILL_STROKE","INVISIBLE","FILL_ADD_TO_PATH","STROKE_ADD_TO_PATH","FILL_STROKE_ADD_TO_PATH","ADD_TO_PATH","FILL_STROKE_MASK","ADD_TO_PATH_FLAG","ImageKind","GRAYSCALE_1BPP","RGB_24BPP","RGBA_32BPP","AnnotationType","TEXT","LINK","FREETEXT","LINE","SQUARE","CIRCLE","POLYGON","POLYLINE","HIGHLIGHT","UNDERLINE","SQUIGGLY","STRIKEOUT","STAMP","CARET","INK","POPUP","FILEATTACHMENT","SOUND","MOVIE","WIDGET","SCREEN","PRINTERMARK","TRAPNET","WATERMARK","THREED","REDACT","AnnotationStateModelType","MARKED","REVIEW","AnnotationMarkedState","UNMARKED","AnnotationReviewState","ACCEPTED","REJECTED","CANCELLED","COMPLETED","AnnotationReplyType","GROUP","REPLY","AnnotationFlag","HIDDEN","NOZOOM","NOROTATE","NOVIEW","READONLY","LOCKED","TOGGLENOVIEW","LOCKEDCONTENTS","AnnotationFieldFlag","REQUIRED","NOEXPORT","MULTILINE","PASSWORD","NOTOGGLETOOFF","RADIO","PUSHBUTTON","COMBO","EDIT","SORT","FILESELECT","MULTISELECT","DONOTSPELLCHECK","DONOTSCROLL","COMB","RICHTEXT","RADIOSINUNISON","COMMITONSELCHANGE","AnnotationBorderStyleType","SOLID","DASHED","BEVELED","INSET","AnnotationActionEventType","E","X","D","U","Fo","Bl","PO","PC","PV","PI","K","F","V","C","DocumentActionEventType","WC","WS","DS","WP","DP","PageActionEventType","O","StreamType","UNKNOWN","FLATE","LZW","DCT","JPX","JBIG","A85","AHX","CCF","RLX","FontType","TYPE1","TYPE1STANDARD","TYPE1C","CIDFONTTYPE0","CIDFONTTYPE0C","TRUETYPE","CIDFONTTYPE2","TYPE3","OPENTYPE","TYPE0","MMTYPE1","VerbosityLevel","ERRORS","WARNINGS","INFOS","CMapCompressionType","BINARY","STREAM","OPS","dependency","setLineWidth","setLineCap","setLineJoin","setMiterLimit","setDash","setRenderingIntent","setFlatness","setGState","save","restore","transform","moveTo","lineTo","curveTo","curveTo2","curveTo3","closePath","rectangle","stroke","closeStroke","fill","eoFill","fillStroke","eoFillStroke","closeFillStroke","closeEOFillStroke","endPath","clip","eoClip","beginText","endText","setCharSpacing","setWordSpacing","setHScale","setLeading","setFont","setTextRenderingMode","setTextRise","moveText","setLeadingMoveText","setTextMatrix","nextLine","showText","showSpacedText","nextLineShowText","nextLineSetSpacingShowText","setCharWidth","setCharWidthAndBounds","setStrokeColorSpace","setFillColorSpace","setStrokeColor","setStrokeColorN","setFillColor","setFillColorN","setStrokeGray","setFillGray","setStrokeRGBColor","setFillRGBColor","setStrokeCMYKColor","setFillCMYKColor","shadingFill","beginInlineImage","beginImageData","endInlineImage","paintXObject","markPoint","markPointProps","beginMarkedContent","beginMarkedContentProps","endMarkedContent","beginCompat","endCompat","paintFormXObjectBegin","paintFormXObjectEnd","beginGroup","endGroup","beginAnnotations","endAnnotations","beginAnnotation","endAnnotation","paintJpegXObject","paintImageMaskXObject","paintImageMaskXObjectGroup","paintImageXObject","paintInlineImageXObject","paintInlineImageXObjectGroup","paintImageXObjectRepeat","paintImageMaskXObjectRepeat","paintSolidColorImageMask","constructPath","UNSUPPORTED_FEATURES","unknown","forms","javaScript","signatures","smask","shadingPattern","font","errorTilingPattern","errorExtGState","errorXObject","errorFontLoadType3","errorFontState","errorFontMissing","errorFontTranslate","errorColorSpace","errorOperatorList","errorFontToUnicode","errorFontLoadNative","errorFontBuildPath","errorFontGetPath","errorMarkedContent","errorContentSubStream","PasswordResponses","NEED_PASSWORD","INCORRECT_PASSWORD","verbosity","Number","unreachable","base","other","absoluteUrl","_isValidProtocol","enumerable","configurable","writable","BaseException","NullCharactersRegExp","str","bytes","length","MAX_ARGUMENT_COUNT","String","strBuf","chunkEnd","chunk","arr","resultLength","arrayByteLength","pos","item","itemLength","value","obj","buffer8","view32","IsLittleEndianCached","shadow","isLittleEndian","IsEvalSupportedCached","isEvalSupported","hexNumbers","Array","n","makeHexColor","m1","m2","applyTransform","xt","p","m","yt","applyInverseTransform","d","getAxialAlignedBoundingBox","p1","Util","p2","r","p3","p4","inverseTransform","apply3dTransform","v","singularValueDecompose2dScale","transpose","a","b","c","first","sx","sy","normalizeRect","intersect","orderedX","rect1","rect2","orderedY","result","PDFStringTranslateTable","code","match","buf","char","escape","unescape","encodeURIComponent","arr1","arr2","date","buffer","capability","isSettled","get","contentType","forceDataSchema","URL","type","digits","b1","b2","b3","d1","d2","d3","d4","isNodeJS","process","create","context","reset","canvasAndContext","destroy","isCompressed","compressionType","reason","svg","createElement","DEFAULT_RANGE_CHUNK_SIZE","RENDERING_CANCELLED_TIMEOUT","DefaultCanvasFactory","DefaultCMapReaderFactory","DefaultStandardFontDataFactory","createPDFNetworkStream","task","src","source","isArrayBuffer","range","params","rangeTransport","worker","window","isNaN","setVerbosityLevel","workerParams","port","GlobalWorkerOptions","PDFWorker","docId","workerIdPromise","_fetchDocument","networkStreamPromise","networkStream","initialData","progressiveDone","contentDispositionFilename","disableRange","disableStream","httpHeaders","withCredentials","rangeChunkSize","messageHandler","transport","Promise","pdfDataRangeTransport","apiVersion","password","disableAutoFetch","maxImageSize","disableFontFace","postMessageTransfers","docBaseUrl","ignoreErrors","fontExtraProperties","enableXfa","useSystemFonts","cMapUrl","standardFontDataUrl","idCounters","doc","PDFDocumentLoadingTask","promise","transportDestroyed","addRangeListener","addProgressListener","addProgressiveReadListener","addProgressiveDoneListener","onDataRange","listener","onDataProgress","onDataProgressiveRead","onDataProgressiveDone","transportReady","requestDataRange","abort","deprecated","annotationStorage","numPages","fingerprints","isPureXfa","allXfaHtml","getPage","getPageIndex","getDestinations","getDestination","getPageLabels","getPageLayout","getPageMode","getViewerPreferences","getOpenAction","getAttachments","getJavaScript","getJSActions","getOutline","getOptionalContentConfig","getPermissions","getMetadata","getMarkInfo","getData","getDownloadInfo","getStats","cleanup","keepLoadedFonts","loadingParams","loadingTask","saveDocument","getFieldObjects","hasJSActions","getCalculationOrderIds","pdfBug","pageNumber","rotate","ref","userUnit","view","getViewport","getAnnotations","intent","renderingIntent","getXfa","render","renderInteractiveForms","imageLayer","canvasFactory","background","includeAnnotationStorage","optionalContentConfigPromise","intentState","clearTimeout","canvasFactoryInstance","fnArray","argsArray","lastChunk","pageIndex","complete","error","internalRenderTask","callback","objs","commonObjs","operatorList","useRequestAnimationFrame","renderTask","getOperatorList","opListTask","streamTextContent","normalizeWhitespace","disableCombineTextItems","includeMarkedContent","TEXT_CONTENT_CHUNK_SIZE","combineTextItems","highWaterMark","size","textContent","getTextContent","readableStream","reader","pump","items","styles","getStructTree","_destroy","waitOn","force","resetStats","_tryCleanup","renderTasks","_startRenderPage","_renderPageChunk","operatorListChunk","_pumpOperatorList","args","_abortOperatorList","curIntentState","stats","postMessage","cloned","transfers","cloneValue","desc","event","addEventListener","removeEventListener","terminate","pdfWorkerPorts","isWorkerDisabled","nextFakeWorkerId","fallbackWorkerSrc","pdfjsFilePath","fakeWorkerCapability","loader","mainWorkerMessageHandler","getMainThreadWorkerMessageHandler","eval","getWorkerSrc","loadScript","wrapper","_initializeFromPort","_initialize","workerSrc","isSameOrigin","createCDNWrapper","terminateEarly","onWorkerError","sendTest","testObj","info","_setupFakeWorker","setupFakeWorkerGlobal","WorkerMessageHandler","id","workerHandler","fromPort","onUnsupportedFeature","styleElement","page","terminated","setupMessageHandler","evt","loaded","total","sink","readyReason","headersCapability","fullReader","isStreamingSupported","isRangeSupported","contentLength","rangeReader","pdfInfo","ex","msg","exception","updatePassword","exportedError","exportedData","fontRegistry","registerFont","pageProxy","MAX_IMAGE_SIZE_TO_STORE","imageData","_onUnsupportedFeature","pageInfo","filename","getDocJSActions","getPageJSActions","results","metadata","startCleanup","cleanupSuccessful","_ensureObj","resolved","has","clear","cancel","canvasInUse","completed","initializeGraphics","transparency","InternalRenderTask","operatorListChanged","_continue","_scheduleNext","_next","version","build","addNativeFontFace","insertRule","styleSheet","bind","nativeFontFace","featureId","rule","_queueLoadingCallback","isFontLoadingAPISupported","hasFonts","isSyncFontLoadingSupported","_loadTestFont","_prepareFontLoadEvent","FontLoader","requests","nextRequestId","supported","navigator","otherRequest","setTimeout","done","getLoadTestFont","atob","offset","chunk1","s","chunk2","ctx","called","isFontReady","loadTestFontId","COMMENT_OFFSET","spliceString","CFF_CHECKSUM_OFFSET","XXXX_VALUE","checksum","int32","string32","btoa","names","div","span","translatedData","createNativeFontFace","css","weight","createFontFaceRule","bytesToString","getPathGenerator","cmds","jsBuf","current","NodeCanvasFactory","NodeCMapReaderFactory","NodeStandardFontDataFactory","fs","__non_webpack_require__","Canvas","getValue","setValue","modified","getAll","objectFromMap","_setModified","resetModified","serializable","MIN_FONT_SIZE","MAX_FONT_SIZE","MAX_GROUP_SIZE","MAX_CACHED_CANVAS_PATTERNS","EXECUTION_TIME","EXECUTION_STEPS","COMPILE_TYPE3_GLYPHS","MAX_SIZE_TO_COMPILE","FULL_CHUNK_HEIGHT","LINEWIDTH_SCALE_FACTOR","set","ad_bc","bc_ad","old","prev","cosValue","sinValue","getCanvas","canvasEntry","addContextCurrentTransform","maxSize","POINT_TO_PROCESS_LIMIT","POINT_TYPES","imgData","width1","points","lineSize","data0","elem","mask","count","j","j0","sum","steps","outlines","coords","p0","step","pp","drawOutline","k","kk","o","l","ll","setCurrentPoint","transferMaps","partialChunkHeight","fullChunks","totalChunks","chunkImgData","srcPos","dest","transferMapRed","transferMapGreen","transferMapBlue","transferMapGray","srcLength","dest32","dest32DataLength","fullSrcDiff","white","black","thisChunkHeight","destPos","srcDiff","kEnd","kEndUnrolled","srcByte","hasTransferMaps","elemsInThisChunk","properties","property","sourceCtx","destCtx","alpha","alpha_","r0","g0","b0","maskData","transferMap","layerData","y","hasBackdrop","backdrop","subtype","composeFn","PIXELS_TO_PROCESS","chunkSize","row","chunkHeight","maskCtx","layerCtx","composeSMaskBackdrop","genericComposeSMask","LINE_CAP_STYLES","LINE_JOIN_STYLES","NORMAL_CLIP","EO_CLIP","beginDrawing","transparentCanvas","resetCtxToDefault","viewport","executeOperatorList","executionStartIdx","argsArrayLen","chunkOperations","endTime","stepper","fnId","objsPool","depObjId","continueCallback","endDrawing","_scaleImage","img","widthScale","heightScale","paintWidth","paintHeight","tmpCanvasId","newWidth","newHeight","tmpCanvas","tmpCtx","_createMaskCanvas","fillColor","isPatternFill","maskCanvas","putBinaryImageMask","objToCanvas","maskToCanvas","cord1","cord2","drawnWidth","drawnHeight","fillCanvas","fillCtx","scaled","inverse","states","state","key","beginSMaskGroup","activeSMask","cacheId","scratchCanvas","currentCtx","currentTransform","groupCtx","copyCtxState","suspendSMaskGroup","composeSMask","deltaTransform","resumeSMaskGroup","endSMaskGroup","x","ops","xw","yh","consumePath","strokeColor","lineWidth","needRestore","paths","path","fontObj","bold","italic","typeface","browserFontSize","paintChar","textRenderingMode","fontSize","fillStrokeMode","isAddToPathSet","patternFill","addToPath","isFontSubpixelAAEnabled","fontSizeScale","charSpacing","wordSpacing","fontDirection","textHScale","glyphsLength","glyphs","vertical","spacingDir","defaultVMetrics","widthAdvanceScale","simpleFillText","pattern","patternTransform","resetLineWidthToOne","glyph","isNum","restoreNeeded","spacing","character","accent","vmetric","vx","vy","scaledX","scaledY","measuredWidth","characterScaleX","scaledAccentX","scaledAccentY","charWidth","showType3Text","fontMatrix","isTextInvisible","spacingLength","transformed","urx","ury","getColorN_Pattern","IR","color","baseTransform","canvasGraphicsFactory","createCanvasGraphics","_getPattern","matrix","getShadingPattern","inv","bl","br","ul","ur","x0","y0","x1","y1","bbox","group","bounds","canvasBounds","scaleX","scaleY","startTransformInverse","skewX","skewY","positions","trans","images","image","objId","map","w","h","imgToPaint","putBinaryImageData","position","left","top","entry","visible","tag","getSinglePixelWidth","absDet","sqNorm1","sqNorm2","pixelHeight","getCanvasPosition","isContentVisible","CanvasGraphics","region","getPattern","_createGradient","grad","colorStop","owner","applyBoundingBox","domMatrix","colors","rowSize","tmp","c1","c2","c3","x2","y2","x3","y3","c1r","c1g","c1b","c2r","c2g","c2b","c3r","c3g","c3b","minY","maxY","xa","car","cag","cab","xb","cbr","cbg","cbb","x1_","x2_","ps","figure","cs","verticesPerRow","rows","cols","q","drawTriangle","_createMeshCanvas","EXPECTED_SCALE","MAX_PATTERN_SIZE","BORDER_SIZE","boundsWidth","boundsHeight","combinedScale","paddedWidth","paddedHeight","cachedCanvases","backgroundColor","drawFigure","matrixScale","temporaryPatternCanvas","PaintType","COLORED","UNCOLORED","createPatternCanvas","xstep","ystep","paintType","tilingType","curMatrixScale","dimx","dimy","graphics","adjustedX0","adjustedY0","adjustedX1","adjustedY1","getSizeAndScale","TilingPattern","clipBbox","bboxWidth","bboxHeight","setFillAndStrokeStyleToContext","cssColor","CallbackKind","DATA","ERROR","StreamKind","CANCEL","CANCEL_COMPLETE","CLOSE","ENQUEUE","PULL","PULL_COMPLETE","START_COMPLETE","callbackId","wrapReason","action","cbSourceName","cbTargetName","comObj","sourceName","targetName","on","ah","send","sendWithPromise","sendWithStream","streamId","controller","startCapability","startCall","pullCall","cancelCall","isClosed","desiredSize","pull","pullCapability","stream","cancelCapability","_createStreamSink","self","streamSink","enqueue","lastDesiredSize","close","sinkCapability","onPull","onCancel","isCancelled","ready","success","_processStreamMessage","_deleteStreamController","_postMessage","getRaw","_evaluateVisibilityExpression","array","operator","element","isVisible","setVisibility","getOrder","getGroups","getGroup","_onReceiveData","found","_progressiveDataLength","_onProgress","firstReader","_onProgressiveDone","_removeRangeReader","getFullReader","queuedChunks","getRangeReader","cancelAllRequests","isPdfFile","_enqueue","requestCapability","headersReady","read","requestsCapability","DEFAULT_TAB_INDEX","parameters","fieldType","isRenderable","ignoreBorder","createQuadrilaterals","_createContainer","container","horizontalRadius","verticalRadius","radius","_createQuadrilaterals","quadrilaterals","savedRect","quadPoint","_createPopup","trigger","popupElement","title","modificationDate","contents","hideWrapper","popup","_renderQuadrilaterals","quadrilateral","platform","isWin","isMac","addLinkAttributes","target","linkService","rel","linkElement","index","_bindLink","destination","_bindNamedAction","_bindJSAction","jsName","detail","JSON","_getKeyModifier","AnnotationElement","_setEventListener","baseName","valueGetter","shift","modifier","_setEventListeners","eventName","_dispatchEventFromSandbox","setColor","ColorConverters","commonActions","display","hidden","print","focus","preventScroll","userName","readonly","required","bgColor","fgColor","textColor","borderColor","jsEvent","actions","setPropertyOnSiblings","storage","storedData","valueAsString","elementData","userValue","formattedValue","beforeInputSelectionRange","beforeInputValue","blurListener","selRange","selStart","selEnd","commitKey","willCommit","_blurListener","change","fieldWidth","combWidth","_setTextStyle","TEXT_ALIGNMENT","style","fontColor","checkbox","radio","pdfButtonValue","checked","radioId","fontSizeStyle","selectElement","optionElement","option","isExport","options","getItems","displayValue","exportValue","values","multipleSelection","remove","insert","indices","editable","changeEx","keyDown","IGNORE_TYPES","selector","parentElements","popupLeft","popupTop","BACKGROUND_ENLIGHT","g","dateObject","PDFDateString","_formatContents","lines","line","_toggle","_show","pin","_hide","unpin","borderWidth","square","circle","coordinate","polyline","getFilenameFromUrl","stringToPDFString","_download","sortedAnnotations","popupAnnotations","layer","downloadManager","imageResourcesPath","svgFactory","enableScripting","mouseState","isDown","rendered","update","elements","CMYK_G","G_CMYK","G_RGB","G_HTML","G","makeColorComp","RGB_G","RGB_HTML","R","B","T_HTML","CMYK_RGB","CMYK_HTML","RGB_CMYK","MAX_TEXT_DIVS_TO_RENDER","DEFAULT_FONT_SIZE","DEFAULT_FONT_ASCENT","ascentCache","AllWhitespaceRegexp","cachedAscent","metrics","ascent","descent","ratio","pixels","textDiv","textDivProperties","angle","canvasWidth","hasText","geom","hasEOL","originalTransform","paddingBottom","paddingLeft","paddingRight","paddingTop","tx","fontHeight","fontAscent","getAscent","shouldScaleText","absScaleX","absScaleY","angleCos","angleSin","divWidth","divHeight","right","bottom","textDivs","textDivsLength","t","ts","expanded","expandBounds","divProperties","e","jj","boxScale","findPositiveMin","box","x1New","x2New","expandBoundsLTR","boxes","fakeBoundary","horizon","boundary","maxXNew","horizonPart","affectedBoundary","xNew","changedHorizon","lastBoundary","useBoundary","used","textContentItemsStr","_processItems","len","parent","appendText","_layoutText","fontFamily","_render","timeout","styleCache","textItems","textStyles","expandTextDivs","expandDivs","expand","transformBuf","paddingBuf","divProps","renderParameters","textContentStream","enhanceTextSelection","SVGGraphics","SVG_DEFAULTS","fontStyle","fontWeight","XML_NS","XLINK_NS","convertImgDataToPng","PNG_HEADER","CHUNK_WRAPPER_SIZE","crcTable","crc","body","crc32","deflateSyncUncompressed","input","Buffer","output","level","literals","maxBlockLength","deflateBlocks","idat","pi","adler","adler32","colorType","bitDepth","offsetLiterals","offsetBytes","kind","ihdr","deflateSync","pngLength","writePngChunk","createObjectURL","encode","opTree","opListElement","fn","pf","clipCount","maskCount","shadingCount","loadDependencies","transformMatrix","getSVG","svgElement","convertOpList","operatorIdMapping","opList","opListToTree","executeOpTree","opTreeElement","lineWidthScale","textMatrix","pm","addFontStyle","details","setStrokeAlpha","setFillAlpha","_makeColorN_Pattern","_makeTilingPattern","tilingId","txstep","tystep","tiling","tx1","ty1","_makeShadingPattern","shadingId","colorStops","point0","point1","gradient","focalPoint","circlePoint","focalRadius","circleRadius","stop","op","clipId","clipPath","clipElement","_setStrokeAttributes","dashArray","imgSrc","cliprect","imgEl","definitions","rootGroup","_ensureClipGroup","clipGroup","_ensureTransformGroup","setupStorage","html","setAttributes","attributes","root","rootHtml","stack","rootDiv","child","childHtml","el","http","https","fileUriRegex","parsedUrl","parseUrl","_error","_setReadableStream","auth","host","method","handleResponse","getResponseHeader","isHttp","suggestedLength","extractFilenameFromHeader","createRequestOptions","stat","returnValues","allowRangeRequests","contentEncoding","contentDisposition","getFilenameFromContentDispositionHeader","status","needsEncodingFixup","toParamRegExp","rfc2616unquote","rfc5987decode","rfc2047decode","fixupEncoding","rfc2231getparam","decoder","fatal","textdecode","iter","parts","part","quotindex","encodingend","extvalue","encoding","langvalue","text","OK_RESPONSE","PARTIAL_CONTENT_RESPONSE","xhr","requestRange","listeners","requestFull","xhrId","pendingRequest","onProgress","onStateChange","xhrStatus","ok_response_on_range_request","getArrayBuffer","rangeHeader","begin","getRequestXhr","isPendingRequest","abortRequest","_onRangeRequestReaderClosed","onHeadersReceived","onDone","onError","manager","_onHeadersReceived","fullRequestXhrId","fullRequestXhr","_onDone","_onError","createResponseStatusError","_close","signal","abortController","mode","credentials","redirect","headers","createHeaders","createFetchOptions","validateResponseStatus","pdfjsVersion","pdfjsBuild","require","setPDFNetworkStreamFactory"],"mappings":"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","file":"pdf.js","sourcesContent":["(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"pdfjs-dist/build/pdf\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"pdfjs-dist/build/pdf\"] = factory();\n\telse\n\t\troot[\"pdfjs-dist/build/pdf\"] = factory();\n})(this, function() {\nreturn ","/* Copyright 2015 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport {\n assert,\n BaseException,\n isString,\n removeNullCharacters,\n stringToBytes,\n Util,\n warn,\n} from \"../shared/util.js\";\nimport {\n BaseCanvasFactory,\n BaseCMapReaderFactory,\n BaseStandardFontDataFactory,\n BaseSVGFactory,\n} from \"./base_factory.js\";\n\nconst DEFAULT_LINK_REL = \"noopener noreferrer nofollow\";\nconst SVG_NS = \"http://www.w3.org/2000/svg\";\n\nclass DOMCanvasFactory extends BaseCanvasFactory {\n constructor({ ownerDocument = globalThis.document } = {}) {\n super();\n this._document = ownerDocument;\n }\n\n _createCanvas(width, height) {\n const canvas = this._document.createElement(\"canvas\");\n canvas.width = width;\n canvas.height = height;\n return canvas;\n }\n}\n\nasync function fetchData(url, asTypedArray = false) {\n if (\n (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"MOZCENTRAL\")) ||\n isValidFetchUrl(url, document.baseURI)\n ) {\n const response = await fetch(url);\n if (!response.ok) {\n throw new Error(response.statusText);\n }\n return asTypedArray\n ? new Uint8Array(await response.arrayBuffer())\n : stringToBytes(await response.text());\n }\n\n // The Fetch API is not supported.\n return new Promise((resolve, reject) => {\n const request = new XMLHttpRequest();\n request.open(\"GET\", url, /* asTypedArray = */ true);\n\n if (asTypedArray) {\n request.responseType = \"arraybuffer\";\n }\n request.onreadystatechange = () => {\n if (request.readyState !== XMLHttpRequest.DONE) {\n return;\n }\n if (request.status === 200 || request.status === 0) {\n let data;\n if (asTypedArray && request.response) {\n data = new Uint8Array(request.response);\n } else if (!asTypedArray && request.responseText) {\n data = stringToBytes(request.responseText);\n }\n if (data) {\n resolve(data);\n return;\n }\n }\n reject(new Error(request.statusText));\n };\n\n request.send(null);\n });\n}\n\nclass DOMCMapReaderFactory extends BaseCMapReaderFactory {\n _fetchData(url, compressionType) {\n return fetchData(url, /* asTypedArray = */ this.isCompressed).then(data => {\n return { cMapData: data, compressionType };\n });\n }\n}\n\nclass DOMStandardFontDataFactory extends BaseStandardFontDataFactory {\n _fetchData(url) {\n return fetchData(url, /* asTypedArray = */ true);\n }\n}\n\nclass DOMSVGFactory extends BaseSVGFactory {\n _createSVG(type) {\n return document.createElementNS(SVG_NS, type);\n }\n}\n\n/**\n * @typedef {Object} PageViewportParameters\n * @property {Array} viewBox - The xMin, yMin, xMax and\n * yMax coordinates.\n * @property {number} scale - The scale of the viewport.\n * @property {number} rotation - The rotation, in degrees, of the viewport.\n * @property {number} [offsetX] - The horizontal, i.e. x-axis, offset. The\n * default value is `0`.\n * @property {number} [offsetY] - The vertical, i.e. y-axis, offset. The\n * default value is `0`.\n * @property {boolean} [dontFlip] - If true, the y-axis will not be flipped.\n * The default value is `false`.\n */\n\n/**\n * @typedef {Object} PageViewportCloneParameters\n * @property {number} [scale] - The scale, overriding the one in the cloned\n * viewport. The default value is `this.scale`.\n * @property {number} [rotation] - The rotation, in degrees, overriding the one\n * in the cloned viewport. The default value is `this.rotation`.\n * @property {number} [offsetX] - The horizontal, i.e. x-axis, offset.\n * The default value is `this.offsetX`.\n * @property {number} [offsetY] - The vertical, i.e. y-axis, offset.\n * The default value is `this.offsetY`.\n * @property {boolean} [dontFlip] - If true, the x-axis will not be flipped.\n * The default value is `false`.\n */\n\n/**\n * PDF page viewport created based on scale, rotation and offset.\n */\nclass PageViewport {\n /**\n * @param {PageViewportParameters}\n */\n constructor({\n viewBox,\n scale,\n rotation,\n offsetX = 0,\n offsetY = 0,\n dontFlip = false,\n }) {\n this.viewBox = viewBox;\n this.scale = scale;\n this.rotation = rotation;\n this.offsetX = offsetX;\n this.offsetY = offsetY;\n\n // creating transform to convert pdf coordinate system to the normal\n // canvas like coordinates taking in account scale and rotation\n const centerX = (viewBox[2] + viewBox[0]) / 2;\n const centerY = (viewBox[3] + viewBox[1]) / 2;\n let rotateA, rotateB, rotateC, rotateD;\n // Normalize the rotation, by clamping it to the [0, 360) range.\n rotation %= 360;\n if (rotation < 0) {\n rotation += 360;\n }\n switch (rotation) {\n case 180:\n rotateA = -1;\n rotateB = 0;\n rotateC = 0;\n rotateD = 1;\n break;\n case 90:\n rotateA = 0;\n rotateB = 1;\n rotateC = 1;\n rotateD = 0;\n break;\n case 270:\n rotateA = 0;\n rotateB = -1;\n rotateC = -1;\n rotateD = 0;\n break;\n case 0:\n rotateA = 1;\n rotateB = 0;\n rotateC = 0;\n rotateD = -1;\n break;\n default:\n throw new Error(\n \"PageViewport: Invalid rotation, must be a multiple of 90 degrees.\"\n );\n }\n\n if (dontFlip) {\n rotateC = -rotateC;\n rotateD = -rotateD;\n }\n\n let offsetCanvasX, offsetCanvasY;\n let width, height;\n if (rotateA === 0) {\n offsetCanvasX = Math.abs(centerY - viewBox[1]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerX - viewBox[0]) * scale + offsetY;\n width = Math.abs(viewBox[3] - viewBox[1]) * scale;\n height = Math.abs(viewBox[2] - viewBox[0]) * scale;\n } else {\n offsetCanvasX = Math.abs(centerX - viewBox[0]) * scale + offsetX;\n offsetCanvasY = Math.abs(centerY - viewBox[1]) * scale + offsetY;\n width = Math.abs(viewBox[2] - viewBox[0]) * scale;\n height = Math.abs(viewBox[3] - viewBox[1]) * scale;\n }\n // creating transform for the following operations:\n // translate(-centerX, -centerY), rotate and flip vertically,\n // scale, and translate(offsetCanvasX, offsetCanvasY)\n this.transform = [\n rotateA * scale,\n rotateB * scale,\n rotateC * scale,\n rotateD * scale,\n offsetCanvasX - rotateA * scale * centerX - rotateC * scale * centerY,\n offsetCanvasY - rotateB * scale * centerX - rotateD * scale * centerY,\n ];\n\n this.width = width;\n this.height = height;\n }\n\n /**\n * Clones viewport, with optional additional properties.\n * @param {PageViewportCloneParameters} [params]\n * @returns {PageViewport} Cloned viewport.\n */\n clone({\n scale = this.scale,\n rotation = this.rotation,\n offsetX = this.offsetX,\n offsetY = this.offsetY,\n dontFlip = false,\n } = {}) {\n return new PageViewport({\n viewBox: this.viewBox.slice(),\n scale,\n rotation,\n offsetX,\n offsetY,\n dontFlip,\n });\n }\n\n /**\n * Converts PDF point to the viewport coordinates. For examples, useful for\n * converting PDF location into canvas pixel coordinates.\n * @param {number} x - The x-coordinate.\n * @param {number} y - The y-coordinate.\n * @returns {Object} Object containing `x` and `y` properties of the\n * point in the viewport coordinate space.\n * @see {@link convertToPdfPoint}\n * @see {@link convertToViewportRectangle}\n */\n convertToViewportPoint(x, y) {\n return Util.applyTransform([x, y], this.transform);\n }\n\n /**\n * Converts PDF rectangle to the viewport coordinates.\n * @param {Array} rect - The xMin, yMin, xMax and yMax coordinates.\n * @returns {Array} Array containing corresponding coordinates of the\n * rectangle in the viewport coordinate space.\n * @see {@link convertToViewportPoint}\n */\n convertToViewportRectangle(rect) {\n const topLeft = Util.applyTransform([rect[0], rect[1]], this.transform);\n const bottomRight = Util.applyTransform([rect[2], rect[3]], this.transform);\n return [topLeft[0], topLeft[1], bottomRight[0], bottomRight[1]];\n }\n\n /**\n * Converts viewport coordinates to the PDF location. For examples, useful\n * for converting canvas pixel location into PDF one.\n * @param {number} x - The x-coordinate.\n * @param {number} y - The y-coordinate.\n * @returns {Object} Object containing `x` and `y` properties of the\n * point in the PDF coordinate space.\n * @see {@link convertToViewportPoint}\n */\n convertToPdfPoint(x, y) {\n return Util.applyInverseTransform([x, y], this.transform);\n }\n}\n\nclass RenderingCancelledException extends BaseException {\n constructor(msg, type) {\n super(msg);\n this.type = type;\n }\n}\n\nconst LinkTarget = {\n NONE: 0, // Default value.\n SELF: 1,\n BLANK: 2,\n PARENT: 3,\n TOP: 4,\n};\n\n/**\n * @typedef ExternalLinkParameters\n * @typedef {Object} ExternalLinkParameters\n * @property {string} url - An absolute URL.\n * @property {LinkTarget} [target] - The link target. The default value is\n * `LinkTarget.NONE`.\n * @property {string} [rel] - The link relationship. The default value is\n * `DEFAULT_LINK_REL`.\n * @property {boolean} [enabled] - Whether the link should be enabled. The\n * default value is true.\n */\n\n/**\n * Adds various attributes (href, title, target, rel) to hyperlinks.\n * @param {HTMLLinkElement} link - The link element.\n * @param {ExternalLinkParameters} params\n */\nfunction addLinkAttributes(link, { url, target, rel, enabled = true } = {}) {\n assert(\n url && typeof url === \"string\",\n 'addLinkAttributes: A valid \"url\" parameter must provided.'\n );\n\n const urlNullRemoved = removeNullCharacters(url);\n if (enabled) {\n link.href = link.title = urlNullRemoved;\n } else {\n link.href = \"\";\n link.title = `Disabled: ${urlNullRemoved}`;\n link.onclick = () => {\n return false;\n };\n }\n\n let targetStr = \"\"; // LinkTarget.NONE\n switch (target) {\n case LinkTarget.NONE:\n break;\n case LinkTarget.SELF:\n targetStr = \"_self\";\n break;\n case LinkTarget.BLANK:\n targetStr = \"_blank\";\n break;\n case LinkTarget.PARENT:\n targetStr = \"_parent\";\n break;\n case LinkTarget.TOP:\n targetStr = \"_top\";\n break;\n }\n link.target = targetStr;\n\n link.rel = typeof rel === \"string\" ? rel : DEFAULT_LINK_REL;\n}\n\nfunction isDataScheme(url) {\n const ii = url.length;\n let i = 0;\n while (i < ii && url[i].trim() === \"\") {\n i++;\n }\n return url.substring(i, i + 5).toLowerCase() === \"data:\";\n}\n\nfunction isPdfFile(filename) {\n return typeof filename === \"string\" && /\\.pdf$/i.test(filename);\n}\n\n/**\n * Gets the filename from a given URL.\n * @param {string} url\n * @returns {string}\n */\nfunction getFilenameFromUrl(url) {\n const anchor = url.indexOf(\"#\");\n const query = url.indexOf(\"?\");\n const end = Math.min(\n anchor > 0 ? anchor : url.length,\n query > 0 ? query : url.length\n );\n return url.substring(url.lastIndexOf(\"/\", end) + 1, end);\n}\n\n/**\n * Returns the filename or guessed filename from the url (see issue 3455).\n * @param {string} url - The original PDF location.\n * @param {string} defaultFilename - The value returned if the filename is\n * unknown, or the protocol is unsupported.\n * @returns {string} Guessed PDF filename.\n */\nfunction getPdfFilenameFromUrl(url, defaultFilename = \"document.pdf\") {\n if (typeof url !== \"string\") {\n return defaultFilename;\n }\n if (isDataScheme(url)) {\n warn('getPdfFilenameFromUrl: ignore \"data:\"-URL for performance reasons.');\n return defaultFilename;\n }\n const reURI = /^(?:(?:[^:]+:)?\\/\\/[^/]+)?([^?#]*)(\\?[^#]*)?(#.*)?$/;\n // SCHEME HOST 1.PATH 2.QUERY 3.REF\n // Pattern to get last matching NAME.pdf\n const reFilename = /[^/?#=]+\\.pdf\\b(?!.*\\.pdf\\b)/i;\n const splitURI = reURI.exec(url);\n let suggestedFilename =\n reFilename.exec(splitURI[1]) ||\n reFilename.exec(splitURI[2]) ||\n reFilename.exec(splitURI[3]);\n if (suggestedFilename) {\n suggestedFilename = suggestedFilename[0];\n if (suggestedFilename.includes(\"%\")) {\n // URL-encoded %2Fpath%2Fto%2Ffile.pdf should be file.pdf\n try {\n suggestedFilename = reFilename.exec(\n decodeURIComponent(suggestedFilename)\n )[0];\n } catch (ex) {\n // Possible (extremely rare) errors:\n // URIError \"Malformed URI\", e.g. for \"%AA.pdf\"\n // TypeError \"null has no properties\", e.g. for \"%2F.pdf\"\n }\n }\n }\n return suggestedFilename || defaultFilename;\n}\n\nclass StatTimer {\n constructor() {\n this.started = Object.create(null);\n this.times = [];\n }\n\n time(name) {\n if (name in this.started) {\n warn(`Timer is already running for ${name}`);\n }\n this.started[name] = Date.now();\n }\n\n timeEnd(name) {\n if (!(name in this.started)) {\n warn(`Timer has not been started for ${name}`);\n }\n this.times.push({\n name,\n start: this.started[name],\n end: Date.now(),\n });\n // Remove timer from started so it can be called again.\n delete this.started[name];\n }\n\n toString() {\n // Find the longest name for padding purposes.\n const outBuf = [];\n let longest = 0;\n for (const time of this.times) {\n const name = time.name;\n if (name.length > longest) {\n longest = name.length;\n }\n }\n for (const time of this.times) {\n const duration = time.end - time.start;\n outBuf.push(`${time.name.padEnd(longest)} ${duration}ms\\n`);\n }\n return outBuf.join(\"\");\n }\n}\n\nfunction isValidFetchUrl(url, baseUrl) {\n try {\n const { protocol } = baseUrl ? new URL(url, baseUrl) : new URL(url);\n // The Fetch API only supports the http/https protocols, and not file/ftp.\n return protocol === \"http:\" || protocol === \"https:\";\n } catch (ex) {\n return false; // `new URL()` will throw on incorrect data.\n }\n}\n\n/**\n * @param {string} src\n * @param {boolean} [removeScriptElement]\n * @returns {Promise}\n */\nfunction loadScript(src, removeScriptElement = false) {\n return new Promise((resolve, reject) => {\n const script = document.createElement(\"script\");\n script.src = src;\n\n script.onload = function (evt) {\n if (removeScriptElement) {\n script.remove();\n }\n resolve(evt);\n };\n script.onerror = function () {\n reject(new Error(`Cannot load script at: ${script.src}`));\n };\n (document.head || document.documentElement).appendChild(script);\n });\n}\n\n// Deprecated API function -- display regardless of the `verbosity` setting.\nfunction deprecated(details) {\n console.log(\"Deprecated API usage: \" + details);\n}\n\nlet pdfDateStringRegex;\n\nclass PDFDateString {\n /**\n * Convert a PDF date string to a JavaScript `Date` object.\n *\n * The PDF date string format is described in section 7.9.4 of the official\n * PDF 32000-1:2008 specification. However, in the PDF 1.7 reference (sixth\n * edition) Adobe describes the same format including a trailing apostrophe.\n * This syntax in incorrect, but Adobe Acrobat creates PDF files that contain\n * them. We ignore all apostrophes as they are not necessary for date parsing.\n *\n * Moreover, Adobe Acrobat doesn't handle changing the date to universal time\n * and doesn't use the user's time zone (effectively ignoring the HH' and mm'\n * parts of the date string).\n *\n * @param {string} input\n * @returns {Date|null}\n */\n static toDateObject(input) {\n if (!input || !isString(input)) {\n return null;\n }\n\n // Lazily initialize the regular expression.\n if (!pdfDateStringRegex) {\n pdfDateStringRegex = new RegExp(\n \"^D:\" + // Prefix (required)\n \"(\\\\d{4})\" + // Year (required)\n \"(\\\\d{2})?\" + // Month (optional)\n \"(\\\\d{2})?\" + // Day (optional)\n \"(\\\\d{2})?\" + // Hour (optional)\n \"(\\\\d{2})?\" + // Minute (optional)\n \"(\\\\d{2})?\" + // Second (optional)\n \"([Z|+|-])?\" + // Universal time relation (optional)\n \"(\\\\d{2})?\" + // Offset hour (optional)\n \"'?\" + // Splitting apostrophe (optional)\n \"(\\\\d{2})?\" + // Offset minute (optional)\n \"'?\" // Trailing apostrophe (optional)\n );\n }\n\n // Optional fields that don't satisfy the requirements from the regular\n // expression (such as incorrect digit counts or numbers that are out of\n // range) will fall back the defaults from the specification.\n const matches = pdfDateStringRegex.exec(input);\n if (!matches) {\n return null;\n }\n\n // JavaScript's `Date` object expects the month to be between 0 and 11\n // instead of 1 and 12, so we have to correct for that.\n const year = parseInt(matches[1], 10);\n let month = parseInt(matches[2], 10);\n month = month >= 1 && month <= 12 ? month - 1 : 0;\n let day = parseInt(matches[3], 10);\n day = day >= 1 && day <= 31 ? day : 1;\n let hour = parseInt(matches[4], 10);\n hour = hour >= 0 && hour <= 23 ? hour : 0;\n let minute = parseInt(matches[5], 10);\n minute = minute >= 0 && minute <= 59 ? minute : 0;\n let second = parseInt(matches[6], 10);\n second = second >= 0 && second <= 59 ? second : 0;\n const universalTimeRelation = matches[7] || \"Z\";\n let offsetHour = parseInt(matches[8], 10);\n offsetHour = offsetHour >= 0 && offsetHour <= 23 ? offsetHour : 0;\n let offsetMinute = parseInt(matches[9], 10) || 0;\n offsetMinute = offsetMinute >= 0 && offsetMinute <= 59 ? offsetMinute : 0;\n\n // Universal time relation 'Z' means that the local time is equal to the\n // universal time, whereas the relations '+'/'-' indicate that the local\n // time is later respectively earlier than the universal time. Every date\n // is normalized to universal time.\n if (universalTimeRelation === \"-\") {\n hour += offsetHour;\n minute += offsetMinute;\n } else if (universalTimeRelation === \"+\") {\n hour -= offsetHour;\n minute -= offsetMinute;\n }\n\n return new Date(Date.UTC(year, month, day, hour, minute, second));\n }\n}\n\n/**\n * NOTE: This is (mostly) intended to support printing of XFA forms.\n */\nfunction getXfaPageViewport(xfaPage, { scale = 1, rotation = 0 }) {\n const { width, height } = xfaPage.attributes.style;\n const viewBox = [0, 0, parseInt(width), parseInt(height)];\n\n return new PageViewport({\n viewBox,\n scale,\n rotation,\n });\n}\n\nexport {\n addLinkAttributes,\n DEFAULT_LINK_REL,\n deprecated,\n DOMCanvasFactory,\n DOMCMapReaderFactory,\n DOMStandardFontDataFactory,\n DOMSVGFactory,\n getFilenameFromUrl,\n getPdfFilenameFromUrl,\n getXfaPageViewport,\n isDataScheme,\n isPdfFile,\n isValidFetchUrl,\n LinkTarget,\n loadScript,\n PageViewport,\n PDFDateString,\n RenderingCancelledException,\n StatTimer,\n};\n","/* Copyright 2012 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport \"./compatibility.js\";\n\nconst IDENTITY_MATRIX = [1, 0, 0, 1, 0, 0];\nconst FONT_IDENTITY_MATRIX = [0.001, 0, 0, 0.001, 0, 0];\n\n// Permission flags from Table 22, Section 7.6.3.2 of the PDF specification.\nconst PermissionFlag = {\n PRINT: 0x04,\n MODIFY_CONTENTS: 0x08,\n COPY: 0x10,\n MODIFY_ANNOTATIONS: 0x20,\n FILL_INTERACTIVE_FORMS: 0x100,\n COPY_FOR_ACCESSIBILITY: 0x200,\n ASSEMBLE: 0x400,\n PRINT_HIGH_QUALITY: 0x800,\n};\n\nconst TextRenderingMode = {\n FILL: 0,\n STROKE: 1,\n FILL_STROKE: 2,\n INVISIBLE: 3,\n FILL_ADD_TO_PATH: 4,\n STROKE_ADD_TO_PATH: 5,\n FILL_STROKE_ADD_TO_PATH: 6,\n ADD_TO_PATH: 7,\n FILL_STROKE_MASK: 3,\n ADD_TO_PATH_FLAG: 4,\n};\n\nconst ImageKind = {\n GRAYSCALE_1BPP: 1,\n RGB_24BPP: 2,\n RGBA_32BPP: 3,\n};\n\nconst AnnotationType = {\n TEXT: 1,\n LINK: 2,\n FREETEXT: 3,\n LINE: 4,\n SQUARE: 5,\n CIRCLE: 6,\n POLYGON: 7,\n POLYLINE: 8,\n HIGHLIGHT: 9,\n UNDERLINE: 10,\n SQUIGGLY: 11,\n STRIKEOUT: 12,\n STAMP: 13,\n CARET: 14,\n INK: 15,\n POPUP: 16,\n FILEATTACHMENT: 17,\n SOUND: 18,\n MOVIE: 19,\n WIDGET: 20,\n SCREEN: 21,\n PRINTERMARK: 22,\n TRAPNET: 23,\n WATERMARK: 24,\n THREED: 25,\n REDACT: 26,\n};\n\nconst AnnotationStateModelType = {\n MARKED: \"Marked\",\n REVIEW: \"Review\",\n};\n\nconst AnnotationMarkedState = {\n MARKED: \"Marked\",\n UNMARKED: \"Unmarked\",\n};\n\nconst AnnotationReviewState = {\n ACCEPTED: \"Accepted\",\n REJECTED: \"Rejected\",\n CANCELLED: \"Cancelled\",\n COMPLETED: \"Completed\",\n NONE: \"None\",\n};\n\nconst AnnotationReplyType = {\n GROUP: \"Group\",\n REPLY: \"R\",\n};\n\nconst AnnotationFlag = {\n INVISIBLE: 0x01,\n HIDDEN: 0x02,\n PRINT: 0x04,\n NOZOOM: 0x08,\n NOROTATE: 0x10,\n NOVIEW: 0x20,\n READONLY: 0x40,\n LOCKED: 0x80,\n TOGGLENOVIEW: 0x100,\n LOCKEDCONTENTS: 0x200,\n};\n\nconst AnnotationFieldFlag = {\n READONLY: 0x0000001,\n REQUIRED: 0x0000002,\n NOEXPORT: 0x0000004,\n MULTILINE: 0x0001000,\n PASSWORD: 0x0002000,\n NOTOGGLETOOFF: 0x0004000,\n RADIO: 0x0008000,\n PUSHBUTTON: 0x0010000,\n COMBO: 0x0020000,\n EDIT: 0x0040000,\n SORT: 0x0080000,\n FILESELECT: 0x0100000,\n MULTISELECT: 0x0200000,\n DONOTSPELLCHECK: 0x0400000,\n DONOTSCROLL: 0x0800000,\n COMB: 0x1000000,\n RICHTEXT: 0x2000000,\n RADIOSINUNISON: 0x2000000,\n COMMITONSELCHANGE: 0x4000000,\n};\n\nconst AnnotationBorderStyleType = {\n SOLID: 1,\n DASHED: 2,\n BEVELED: 3,\n INSET: 4,\n UNDERLINE: 5,\n};\n\nconst AnnotationActionEventType = {\n E: \"Mouse Enter\",\n X: \"Mouse Exit\",\n D: \"Mouse Down\",\n U: \"Mouse Up\",\n Fo: \"Focus\",\n Bl: \"Blur\",\n PO: \"PageOpen\",\n PC: \"PageClose\",\n PV: \"PageVisible\",\n PI: \"PageInvisible\",\n K: \"Keystroke\",\n F: \"Format\",\n V: \"Validate\",\n C: \"Calculate\",\n};\n\nconst DocumentActionEventType = {\n WC: \"WillClose\",\n WS: \"WillSave\",\n DS: \"DidSave\",\n WP: \"WillPrint\",\n DP: \"DidPrint\",\n};\n\nconst PageActionEventType = {\n O: \"PageOpen\",\n C: \"PageClose\",\n};\n\nconst StreamType = {\n UNKNOWN: \"UNKNOWN\",\n FLATE: \"FLATE\",\n LZW: \"LZW\",\n DCT: \"DCT\",\n JPX: \"JPX\",\n JBIG: \"JBIG\",\n A85: \"A85\",\n AHX: \"AHX\",\n CCF: \"CCF\",\n RLX: \"RLX\", // PDF short name is 'RL', but telemetry requires three chars.\n};\n\nconst FontType = {\n UNKNOWN: \"UNKNOWN\",\n TYPE1: \"TYPE1\",\n TYPE1STANDARD: \"TYPE1STANDARD\",\n TYPE1C: \"TYPE1C\",\n CIDFONTTYPE0: \"CIDFONTTYPE0\",\n CIDFONTTYPE0C: \"CIDFONTTYPE0C\",\n TRUETYPE: \"TRUETYPE\",\n CIDFONTTYPE2: \"CIDFONTTYPE2\",\n TYPE3: \"TYPE3\",\n OPENTYPE: \"OPENTYPE\",\n TYPE0: \"TYPE0\",\n MMTYPE1: \"MMTYPE1\",\n};\n\nconst VerbosityLevel = {\n ERRORS: 0,\n WARNINGS: 1,\n INFOS: 5,\n};\n\nconst CMapCompressionType = {\n NONE: 0,\n BINARY: 1,\n STREAM: 2,\n};\n\n// All the possible operations for an operator list.\nconst OPS = {\n // Intentionally start from 1 so it is easy to spot bad operators that will be\n // 0's.\n dependency: 1,\n setLineWidth: 2,\n setLineCap: 3,\n setLineJoin: 4,\n setMiterLimit: 5,\n setDash: 6,\n setRenderingIntent: 7,\n setFlatness: 8,\n setGState: 9,\n save: 10,\n restore: 11,\n transform: 12,\n moveTo: 13,\n lineTo: 14,\n curveTo: 15,\n curveTo2: 16,\n curveTo3: 17,\n closePath: 18,\n rectangle: 19,\n stroke: 20,\n closeStroke: 21,\n fill: 22,\n eoFill: 23,\n fillStroke: 24,\n eoFillStroke: 25,\n closeFillStroke: 26,\n closeEOFillStroke: 27,\n endPath: 28,\n clip: 29,\n eoClip: 30,\n beginText: 31,\n endText: 32,\n setCharSpacing: 33,\n setWordSpacing: 34,\n setHScale: 35,\n setLeading: 36,\n setFont: 37,\n setTextRenderingMode: 38,\n setTextRise: 39,\n moveText: 40,\n setLeadingMoveText: 41,\n setTextMatrix: 42,\n nextLine: 43,\n showText: 44,\n showSpacedText: 45,\n nextLineShowText: 46,\n nextLineSetSpacingShowText: 47,\n setCharWidth: 48,\n setCharWidthAndBounds: 49,\n setStrokeColorSpace: 50,\n setFillColorSpace: 51,\n setStrokeColor: 52,\n setStrokeColorN: 53,\n setFillColor: 54,\n setFillColorN: 55,\n setStrokeGray: 56,\n setFillGray: 57,\n setStrokeRGBColor: 58,\n setFillRGBColor: 59,\n setStrokeCMYKColor: 60,\n setFillCMYKColor: 61,\n shadingFill: 62,\n beginInlineImage: 63,\n beginImageData: 64,\n endInlineImage: 65,\n paintXObject: 66,\n markPoint: 67,\n markPointProps: 68,\n beginMarkedContent: 69,\n beginMarkedContentProps: 70,\n endMarkedContent: 71,\n beginCompat: 72,\n endCompat: 73,\n paintFormXObjectBegin: 74,\n paintFormXObjectEnd: 75,\n beginGroup: 76,\n endGroup: 77,\n beginAnnotations: 78,\n endAnnotations: 79,\n beginAnnotation: 80,\n endAnnotation: 81,\n paintJpegXObject: 82,\n paintImageMaskXObject: 83,\n paintImageMaskXObjectGroup: 84,\n paintImageXObject: 85,\n paintInlineImageXObject: 86,\n paintInlineImageXObjectGroup: 87,\n paintImageXObjectRepeat: 88,\n paintImageMaskXObjectRepeat: 89,\n paintSolidColorImageMask: 90,\n constructPath: 91,\n};\n\nconst UNSUPPORTED_FEATURES = {\n /** @deprecated unused */\n unknown: \"unknown\",\n forms: \"forms\",\n javaScript: \"javaScript\",\n signatures: \"signatures\",\n smask: \"smask\",\n shadingPattern: \"shadingPattern\",\n /** @deprecated unused */\n font: \"font\",\n errorTilingPattern: \"errorTilingPattern\",\n errorExtGState: \"errorExtGState\",\n errorXObject: \"errorXObject\",\n errorFontLoadType3: \"errorFontLoadType3\",\n errorFontState: \"errorFontState\",\n errorFontMissing: \"errorFontMissing\",\n errorFontTranslate: \"errorFontTranslate\",\n errorColorSpace: \"errorColorSpace\",\n errorOperatorList: \"errorOperatorList\",\n errorFontToUnicode: \"errorFontToUnicode\",\n errorFontLoadNative: \"errorFontLoadNative\",\n errorFontBuildPath: \"errorFontBuildPath\",\n errorFontGetPath: \"errorFontGetPath\",\n errorMarkedContent: \"errorMarkedContent\",\n errorContentSubStream: \"errorContentSubStream\",\n};\n\nconst PasswordResponses = {\n NEED_PASSWORD: 1,\n INCORRECT_PASSWORD: 2,\n};\n\nlet verbosity = VerbosityLevel.WARNINGS;\n\nfunction setVerbosityLevel(level) {\n if (Number.isInteger(level)) {\n verbosity = level;\n }\n}\n\nfunction getVerbosityLevel() {\n return verbosity;\n}\n\n// A notice for devs. These are good for things that are helpful to devs, such\n// as warning that Workers were disabled, which is important to devs but not\n// end users.\nfunction info(msg) {\n if (verbosity >= VerbosityLevel.INFOS) {\n console.log(`Info: ${msg}`);\n }\n}\n\n// Non-fatal warnings.\nfunction warn(msg) {\n if (verbosity >= VerbosityLevel.WARNINGS) {\n console.log(`Warning: ${msg}`);\n }\n}\n\nfunction unreachable(msg) {\n throw new Error(msg);\n}\n\nfunction assert(cond, msg) {\n if (!cond) {\n unreachable(msg);\n }\n}\n\n// Checks if URLs have the same origin. For non-HTTP based URLs, returns false.\nfunction isSameOrigin(baseUrl, otherUrl) {\n let base;\n try {\n base = new URL(baseUrl);\n if (!base.origin || base.origin === \"null\") {\n return false; // non-HTTP url\n }\n } catch (e) {\n return false;\n }\n\n const other = new URL(otherUrl, base);\n return base.origin === other.origin;\n}\n\n// Checks if URLs use one of the allowed protocols, e.g. to avoid XSS.\nfunction _isValidProtocol(url) {\n if (!url) {\n return false;\n }\n switch (url.protocol) {\n case \"http:\":\n case \"https:\":\n case \"ftp:\":\n case \"mailto:\":\n case \"tel:\":\n return true;\n default:\n return false;\n }\n}\n\n/**\n * Attempts to create a valid absolute URL.\n *\n * @param {URL|string} url - An absolute, or relative, URL.\n * @param {URL|string} baseUrl - An absolute URL.\n * @returns Either a valid {URL}, or `null` otherwise.\n */\nfunction createValidAbsoluteUrl(url, baseUrl) {\n if (!url) {\n return null;\n }\n try {\n const absoluteUrl = baseUrl ? new URL(url, baseUrl) : new URL(url);\n if (_isValidProtocol(absoluteUrl)) {\n return absoluteUrl;\n }\n } catch (ex) {\n /* `new URL()` will throw on incorrect data. */\n }\n return null;\n}\n\nfunction shadow(obj, prop, value) {\n Object.defineProperty(obj, prop, {\n value,\n enumerable: true,\n configurable: true,\n writable: false,\n });\n return value;\n}\n\n/**\n * @type {any}\n */\nconst BaseException = (function BaseExceptionClosure() {\n // eslint-disable-next-line no-shadow\n function BaseException(message) {\n if (this.constructor === BaseException) {\n unreachable(\"Cannot initialize BaseException.\");\n }\n this.message = message;\n this.name = this.constructor.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);\n this.code = code;\n }\n}\n\nclass UnknownErrorException extends BaseException {\n constructor(msg, details) {\n super(msg);\n this.details = details;\n }\n}\n\nclass InvalidPDFException extends BaseException {}\n\nclass MissingPDFException extends BaseException {}\n\nclass UnexpectedResponseException extends BaseException {\n constructor(msg, status) {\n super(msg);\n this.status = status;\n }\n}\n\n/**\n * Error caused during parsing PDF data.\n */\nclass FormatError extends BaseException {}\n\n/**\n * Error used to indicate task cancellation.\n */\nclass AbortException extends BaseException {}\n\nconst NullCharactersRegExp = /\\x00/g;\n\n/**\n * @param {string} str\n */\nfunction removeNullCharacters(str) {\n if (typeof str !== \"string\") {\n warn(\"The argument for removeNullCharacters must be a string.\");\n return str;\n }\n return str.replace(NullCharactersRegExp, \"\");\n}\n\nfunction bytesToString(bytes) {\n assert(\n bytes !== null && typeof bytes === \"object\" && bytes.length !== undefined,\n \"Invalid argument for bytesToString\"\n );\n const length = bytes.length;\n const MAX_ARGUMENT_COUNT = 8192;\n if (length < MAX_ARGUMENT_COUNT) {\n return String.fromCharCode.apply(null, bytes);\n }\n const strBuf = [];\n for (let i = 0; i < length; i += MAX_ARGUMENT_COUNT) {\n const chunkEnd = Math.min(i + MAX_ARGUMENT_COUNT, length);\n const chunk = bytes.subarray(i, chunkEnd);\n strBuf.push(String.fromCharCode.apply(null, chunk));\n }\n return strBuf.join(\"\");\n}\n\nfunction stringToBytes(str) {\n assert(typeof str === \"string\", \"Invalid argument for stringToBytes\");\n const length = str.length;\n const bytes = new Uint8Array(length);\n for (let i = 0; i < length; ++i) {\n bytes[i] = str.charCodeAt(i) & 0xff;\n }\n return bytes;\n}\n\n/**\n * Gets length of the array (Array, Uint8Array, or string) in bytes.\n * @param {Array|Uint8Array|string} arr\n * @returns {number}\n */\nfunction arrayByteLength(arr) {\n if (arr.length !== undefined) {\n return arr.length;\n }\n assert(arr.byteLength !== undefined, \"arrayByteLength - invalid argument.\");\n return arr.byteLength;\n}\n\n/**\n * Combines array items (arrays) into single Uint8Array object.\n * @param {Array|Uint8Array|string>} arr - the array of the arrays\n * (Array, Uint8Array, or string).\n * @returns {Uint8Array}\n */\nfunction arraysToBytes(arr) {\n const length = arr.length;\n // Shortcut: if first and only item is Uint8Array, return it.\n if (length === 1 && arr[0] instanceof Uint8Array) {\n return arr[0];\n }\n let resultLength = 0;\n for (let i = 0; i < length; i++) {\n resultLength += arrayByteLength(arr[i]);\n }\n let pos = 0;\n const data = new Uint8Array(resultLength);\n for (let i = 0; i < length; i++) {\n let item = arr[i];\n if (!(item instanceof Uint8Array)) {\n if (typeof item === \"string\") {\n item = stringToBytes(item);\n } else {\n item = new Uint8Array(item);\n }\n }\n const itemLength = item.byteLength;\n data.set(item, pos);\n pos += itemLength;\n }\n return data;\n}\n\nfunction string32(value) {\n if (\n typeof PDFJSDev === \"undefined\" ||\n PDFJSDev.test(\"!PRODUCTION || TESTING\")\n ) {\n assert(\n typeof value === \"number\" && Math.abs(value) < 2 ** 32,\n `string32: Unexpected input \"${value}\".`\n );\n }\n return String.fromCharCode(\n (value >> 24) & 0xff,\n (value >> 16) & 0xff,\n (value >> 8) & 0xff,\n value & 0xff\n );\n}\n\nfunction objectSize(obj) {\n return Object.keys(obj).length;\n}\n\n// Ensure that the returned Object has a `null` prototype; hence why\n// `Object.fromEntries(...)` is not used.\nfunction objectFromMap(map) {\n const obj = Object.create(null);\n for (const [key, value] of map) {\n obj[key] = value;\n }\n return obj;\n}\n\n// Checks the endianness of the platform.\nfunction isLittleEndian() {\n const buffer8 = new Uint8Array(4);\n buffer8[0] = 1;\n const view32 = new Uint32Array(buffer8.buffer, 0, 1);\n return view32[0] === 1;\n}\nconst IsLittleEndianCached = {\n get value() {\n return shadow(this, \"value\", isLittleEndian());\n },\n};\n\n// Checks if it's possible to eval JS expressions.\nfunction isEvalSupported() {\n try {\n new Function(\"\"); // eslint-disable-line no-new, no-new-func\n return true;\n } catch (e) {\n return false;\n }\n}\nconst IsEvalSupportedCached = {\n get value() {\n return shadow(this, \"value\", isEvalSupported());\n },\n};\n\nconst hexNumbers = [...Array(256).keys()].map(n =>\n n.toString(16).padStart(2, \"0\")\n);\n\nclass Util {\n static makeHexColor(r, g, b) {\n return `#${hexNumbers[r]}${hexNumbers[g]}${hexNumbers[b]}`;\n }\n\n // Concatenates two transformation matrices together and returns the result.\n static transform(m1, m2) {\n return [\n m1[0] * m2[0] + m1[2] * m2[1],\n m1[1] * m2[0] + m1[3] * m2[1],\n m1[0] * m2[2] + m1[2] * m2[3],\n m1[1] * m2[2] + m1[3] * m2[3],\n m1[0] * m2[4] + m1[2] * m2[5] + m1[4],\n m1[1] * m2[4] + m1[3] * m2[5] + m1[5],\n ];\n }\n\n // For 2d affine transforms\n static applyTransform(p, m) {\n const xt = p[0] * m[0] + p[1] * m[2] + m[4];\n const yt = p[0] * m[1] + p[1] * m[3] + m[5];\n return [xt, yt];\n }\n\n static applyInverseTransform(p, m) {\n const d = m[0] * m[3] - m[1] * m[2];\n const xt = (p[0] * m[3] - p[1] * m[2] + m[2] * m[5] - m[4] * m[3]) / d;\n const yt = (-p[0] * m[1] + p[1] * m[0] + m[4] * m[1] - m[5] * m[0]) / d;\n return [xt, yt];\n }\n\n // Applies the transform to the rectangle and finds the minimum axially\n // aligned bounding box.\n static getAxialAlignedBoundingBox(r, m) {\n const p1 = Util.applyTransform(r, m);\n const p2 = Util.applyTransform(r.slice(2, 4), m);\n const p3 = Util.applyTransform([r[0], r[3]], m);\n const p4 = Util.applyTransform([r[2], r[1]], m);\n return [\n Math.min(p1[0], p2[0], p3[0], p4[0]),\n Math.min(p1[1], p2[1], p3[1], p4[1]),\n Math.max(p1[0], p2[0], p3[0], p4[0]),\n Math.max(p1[1], p2[1], p3[1], p4[1]),\n ];\n }\n\n static inverseTransform(m) {\n const d = m[0] * m[3] - m[1] * m[2];\n return [\n m[3] / d,\n -m[1] / d,\n -m[2] / d,\n m[0] / d,\n (m[2] * m[5] - m[4] * m[3]) / d,\n (m[4] * m[1] - m[5] * m[0]) / d,\n ];\n }\n\n // Apply a generic 3d matrix M on a 3-vector v:\n // | a b c | | X |\n // | d e f | x | Y |\n // | g h i | | Z |\n // M is assumed to be serialized as [a,b,c,d,e,f,g,h,i],\n // with v as [X,Y,Z]\n static apply3dTransform(m, v) {\n return [\n m[0] * v[0] + m[1] * v[1] + m[2] * v[2],\n m[3] * v[0] + m[4] * v[1] + m[5] * v[2],\n m[6] * v[0] + m[7] * v[1] + m[8] * v[2],\n ];\n }\n\n // This calculation uses Singular Value Decomposition.\n // The SVD can be represented with formula A = USV. We are interested in the\n // matrix S here because it represents the scale values.\n static singularValueDecompose2dScale(m) {\n const transpose = [m[0], m[2], m[1], m[3]];\n\n // Multiply matrix m with its transpose.\n const a = m[0] * transpose[0] + m[1] * transpose[2];\n const b = m[0] * transpose[1] + m[1] * transpose[3];\n const c = m[2] * transpose[0] + m[3] * transpose[2];\n const d = m[2] * transpose[1] + m[3] * transpose[3];\n\n // Solve the second degree polynomial to get roots.\n const first = (a + d) / 2;\n const second = Math.sqrt((a + d) ** 2 - 4 * (a * d - c * b)) / 2;\n const sx = first + second || 1;\n const sy = first - second || 1;\n\n // Scale values are the square roots of the eigenvalues.\n return [Math.sqrt(sx), Math.sqrt(sy)];\n }\n\n // Normalize rectangle rect=[x1, y1, x2, y2] so that (x1,y1) < (x2,y2)\n // For coordinate systems whose origin lies in the bottom-left, this\n // means normalization to (BL,TR) ordering. For systems with origin in the\n // top-left, this means (TL,BR) ordering.\n static normalizeRect(rect) {\n const r = rect.slice(0); // clone rect\n if (rect[0] > rect[2]) {\n r[0] = rect[2];\n r[2] = rect[0];\n }\n if (rect[1] > rect[3]) {\n r[1] = rect[3];\n r[3] = rect[1];\n }\n return r;\n }\n\n // Returns a rectangle [x1, y1, x2, y2] corresponding to the\n // intersection of rect1 and rect2. If no intersection, returns 'false'\n // The rectangle coordinates of rect1, rect2 should be [x1, y1, x2, y2]\n static intersect(rect1, rect2) {\n function compare(a, b) {\n return a - b;\n }\n\n // Order points along the axes\n const orderedX = [rect1[0], rect1[2], rect2[0], rect2[2]].sort(compare);\n const orderedY = [rect1[1], rect1[3], rect2[1], rect2[3]].sort(compare);\n const result = [];\n\n rect1 = Util.normalizeRect(rect1);\n rect2 = Util.normalizeRect(rect2);\n\n // X: first and second points belong to different rectangles?\n if (\n (orderedX[0] === rect1[0] && orderedX[1] === rect2[0]) ||\n (orderedX[0] === rect2[0] && orderedX[1] === rect1[0])\n ) {\n // Intersection must be between second and third points\n result[0] = orderedX[1];\n result[2] = orderedX[2];\n } else {\n return null;\n }\n\n // Y: first and second points belong to different rectangles?\n if (\n (orderedY[0] === rect1[1] && orderedY[1] === rect2[1]) ||\n (orderedY[0] === rect2[1] && orderedY[1] === rect1[1])\n ) {\n // Intersection must be between second and third points\n result[1] = orderedY[1];\n result[3] = orderedY[2];\n } else {\n return null;\n }\n\n return result;\n }\n}\n\nconst PDFStringTranslateTable = [\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0x2d8,\n 0x2c7, 0x2c6, 0x2d9, 0x2dd, 0x2db, 0x2da, 0x2dc, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0, 0, 0, 0, 0, 0x2022, 0x2020, 0x2021, 0x2026, 0x2014, 0x2013, 0x192,\n 0x2044, 0x2039, 0x203a, 0x2212, 0x2030, 0x201e, 0x201c, 0x201d, 0x2018,\n 0x2019, 0x201a, 0x2122, 0xfb01, 0xfb02, 0x141, 0x152, 0x160, 0x178, 0x17d,\n 0x131, 0x142, 0x153, 0x161, 0x17e, 0, 0x20ac,\n];\n\nfunction stringToPDFString(str) {\n const length = str.length,\n strBuf = [];\n if (str[0] === \"\\xFE\" && str[1] === \"\\xFF\") {\n // UTF16BE BOM\n for (let i = 2; i < length; i += 2) {\n strBuf.push(\n String.fromCharCode((str.charCodeAt(i) << 8) | str.charCodeAt(i + 1))\n );\n }\n } else if (str[0] === \"\\xFF\" && str[1] === \"\\xFE\") {\n // UTF16LE BOM\n for (let i = 2; i < length; i += 2) {\n strBuf.push(\n String.fromCharCode((str.charCodeAt(i + 1) << 8) | str.charCodeAt(i))\n );\n }\n } else {\n for (let i = 0; i < length; ++i) {\n const code = PDFStringTranslateTable[str.charCodeAt(i)];\n strBuf.push(code ? String.fromCharCode(code) : str.charAt(i));\n }\n }\n return strBuf.join(\"\");\n}\n\nfunction escapeString(str) {\n // replace \"(\", \")\", \"\\n\", \"\\r\" and \"\\\"\n // by \"\\(\", \"\\)\", \"\\\\n\", \"\\\\r\" and \"\\\\\"\n // in order to write it in a PDF file.\n return str.replace(/([()\\\\\\n\\r])/g, match => {\n if (match === \"\\n\") {\n return \"\\\\n\";\n } else if (match === \"\\r\") {\n return \"\\\\r\";\n }\n return `\\\\${match}`;\n });\n}\n\nfunction isAscii(str) {\n return /^[\\x00-\\x7F]*$/.test(str);\n}\n\nfunction stringToUTF16BEString(str) {\n const buf = [\"\\xFE\\xFF\"];\n for (let i = 0, ii = str.length; i < ii; i++) {\n const char = str.charCodeAt(i);\n buf.push(\n String.fromCharCode((char >> 8) & 0xff),\n String.fromCharCode(char & 0xff)\n );\n }\n return buf.join(\"\");\n}\n\nfunction stringToUTF8String(str) {\n return decodeURIComponent(escape(str));\n}\n\nfunction utf8StringToString(str) {\n return unescape(encodeURIComponent(str));\n}\n\nfunction isBool(v) {\n return typeof v === \"boolean\";\n}\n\nfunction isNum(v) {\n return typeof v === \"number\";\n}\n\nfunction isString(v) {\n return typeof v === \"string\";\n}\n\nfunction isArrayBuffer(v) {\n return typeof v === \"object\" && v !== null && v.byteLength !== undefined;\n}\n\nfunction isArrayEqual(arr1, arr2) {\n if (arr1.length !== arr2.length) {\n return false;\n }\n for (let i = 0, ii = arr1.length; i < ii; i++) {\n if (arr1[i] !== arr2[i]) {\n return false;\n }\n }\n return true;\n}\n\nfunction getModificationDate(date = new Date()) {\n const buffer = [\n date.getUTCFullYear().toString(),\n (date.getUTCMonth() + 1).toString().padStart(2, \"0\"),\n date.getUTCDate().toString().padStart(2, \"0\"),\n date.getUTCHours().toString().padStart(2, \"0\"),\n date.getUTCMinutes().toString().padStart(2, \"0\"),\n date.getUTCSeconds().toString().padStart(2, \"0\"),\n ];\n\n return buffer.join(\"\");\n}\n\n/**\n * Promise Capability object.\n *\n * @typedef {Object} PromiseCapability\n * @property {Promise} promise - A Promise object.\n * @property {boolean} settled - If the Promise has been fulfilled/rejected.\n * @property {function} resolve - Fulfills the Promise.\n * @property {function} reject - Rejects the Promise.\n */\n\n/**\n * Creates a promise capability object.\n * @alias createPromiseCapability\n *\n * @returns {PromiseCapability}\n */\nfunction createPromiseCapability() {\n const capability = Object.create(null);\n let isSettled = false;\n\n Object.defineProperty(capability, \"settled\", {\n get() {\n return isSettled;\n },\n });\n capability.promise = new Promise(function (resolve, reject) {\n capability.resolve = function (data) {\n isSettled = true;\n resolve(data);\n };\n capability.reject = function (reason) {\n isSettled = true;\n reject(reason);\n };\n });\n return capability;\n}\n\nfunction createObjectURL(data, contentType = \"\", forceDataSchema = false) {\n if (URL.createObjectURL && !forceDataSchema) {\n return URL.createObjectURL(new Blob([data], { type: contentType }));\n }\n // Blob/createObjectURL is not available, falling back to data schema.\n const digits =\n \"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\";\n\n let buffer = `data:${contentType};base64,`;\n for (let i = 0, ii = data.length; i < ii; i += 3) {\n const b1 = data[i] & 0xff;\n const b2 = data[i + 1] & 0xff;\n const b3 = data[i + 2] & 0xff;\n const d1 = b1 >> 2,\n d2 = ((b1 & 3) << 4) | (b2 >> 4);\n const d3 = i + 1 < ii ? ((b2 & 0xf) << 2) | (b3 >> 6) : 64;\n const d4 = i + 2 < ii ? b3 & 0x3f : 64;\n buffer += digits[d1] + digits[d2] + digits[d3] + digits[d4];\n }\n return buffer;\n}\n\nexport {\n AbortException,\n AnnotationActionEventType,\n AnnotationBorderStyleType,\n AnnotationFieldFlag,\n AnnotationFlag,\n AnnotationMarkedState,\n AnnotationReplyType,\n AnnotationReviewState,\n AnnotationStateModelType,\n AnnotationType,\n arrayByteLength,\n arraysToBytes,\n assert,\n BaseException,\n bytesToString,\n CMapCompressionType,\n createObjectURL,\n createPromiseCapability,\n createValidAbsoluteUrl,\n DocumentActionEventType,\n escapeString,\n FONT_IDENTITY_MATRIX,\n FontType,\n FormatError,\n getModificationDate,\n getVerbosityLevel,\n IDENTITY_MATRIX,\n ImageKind,\n info,\n InvalidPDFException,\n isArrayBuffer,\n isArrayEqual,\n isAscii,\n isBool,\n IsEvalSupportedCached,\n IsLittleEndianCached,\n isNum,\n isSameOrigin,\n isString,\n MissingPDFException,\n objectFromMap,\n objectSize,\n OPS,\n PageActionEventType,\n PasswordException,\n PasswordResponses,\n PermissionFlag,\n removeNullCharacters,\n setVerbosityLevel,\n shadow,\n StreamType,\n string32,\n stringToBytes,\n stringToPDFString,\n stringToUTF16BEString,\n stringToUTF8String,\n TextRenderingMode,\n UnexpectedResponseException,\n UnknownErrorException,\n unreachable,\n UNSUPPORTED_FEATURES,\n utf8StringToString,\n Util,\n VerbosityLevel,\n warn,\n};\n","/* Copyright 2017 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { isNodeJS } from \"./is_node.js\";\n\n// Skip compatibility checks for modern builds and if we already ran the module.\nif (\n (typeof PDFJSDev === \"undefined\" || !PDFJSDev.test(\"SKIP_BABEL\")) &&\n (typeof globalThis === \"undefined\" || !globalThis._pdfjsCompatibilityChecked)\n) {\n // Provides support for globalThis in legacy browsers.\n // Support: Firefox<65, Chrome<71, Safari<12.1\n if (typeof globalThis === \"undefined\" || globalThis.Math !== Math) {\n // eslint-disable-next-line no-global-assign\n globalThis = require(\"core-js/es/global-this\");\n }\n globalThis._pdfjsCompatibilityChecked = true;\n\n // Support: Node.js\n (function checkNodeBtoa() {\n if (globalThis.btoa || !isNodeJS) {\n return;\n }\n globalThis.btoa = function (chars) {\n // eslint-disable-next-line no-undef\n return Buffer.from(chars, \"binary\").toString(\"base64\");\n };\n })();\n\n // Support: Node.js\n (function checkNodeAtob() {\n if (globalThis.atob || !isNodeJS) {\n return;\n }\n globalThis.atob = function (input) {\n // eslint-disable-next-line no-undef\n return Buffer.from(input, \"base64\").toString(\"binary\");\n };\n })();\n\n // Support: Node.js\n (function checkDOMMatrix() {\n if (globalThis.DOMMatrix || !isNodeJS) {\n return;\n }\n globalThis.DOMMatrix = require(\"dommatrix/dist/dommatrix.js\");\n })();\n\n // Provides support for Object.fromEntries in legacy browsers.\n // Support: Firefox<63, Chrome<73, Safari<12.1, Node.js<12.0.0\n (function checkObjectFromEntries() {\n if (Object.fromEntries) {\n return;\n }\n require(\"core-js/es/object/from-entries.js\");\n })();\n\n // Provides support for *recent* additions to the Promise specification,\n // however basic Promise support is assumed to be available natively.\n // Support: Firefox<71, Chrome<76, Safari<13, Node.js<12.9.0\n (function checkPromise() {\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"IMAGE_DECODERS\")) {\n // The current image decoders are synchronous, hence `Promise` shouldn't\n // need to be polyfilled for the IMAGE_DECODERS build target.\n return;\n }\n if (globalThis.Promise.allSettled) {\n return;\n }\n globalThis.Promise = require(\"core-js/es/promise/index.js\");\n })();\n\n // Support: Node.js\n (function checkReadableStream() {\n if (typeof PDFJSDev !== \"undefined\" && PDFJSDev.test(\"IMAGE_DECODERS\")) {\n // The current image decoders are synchronous, hence `ReadableStream`\n // shouldn't need to be polyfilled for the IMAGE_DECODERS build target.\n return;\n }\n let isReadableStreamSupported = false;\n\n if (typeof ReadableStream !== \"undefined\") {\n // MS Edge may say it has ReadableStream but they are not up to spec yet.\n try {\n // eslint-disable-next-line no-new\n new ReadableStream({\n start(controller) {\n controller.close();\n },\n });\n isReadableStreamSupported = true;\n } catch (e) {\n // The ReadableStream constructor cannot be used.\n }\n }\n if (isReadableStreamSupported) {\n return;\n }\n globalThis.ReadableStream =\n require(\"web-streams-polyfill/dist/ponyfill.js\").ReadableStream;\n })();\n}\n","/* Copyright 2018 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/* globals process */\n\n// NW.js / Electron is a browser context, but copies some Node.js objects; see\n// http://docs.nwjs.io/en/latest/For%20Users/Advanced/JavaScript%20Contexts%20in%20NW.js/#access-nodejs-and-nwjs-api-in-browser-context\n// https://www.electronjs.org/docs/api/process#processversionselectron-readonly\n// https://www.electronjs.org/docs/api/process#processtype-readonly\nconst isNodeJS =\n typeof process === \"object\" &&\n process + \"\" === \"[object process]\" &&\n !process.versions.nw &&\n !(process.versions.electron && process.type && process.type !== \"browser\");\n\nexport { isNodeJS };\n","/* Copyright 2015 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\nimport { CMapCompressionType, unreachable } from \"../shared/util.js\";\n\nclass BaseCanvasFactory {\n constructor() {\n if (this.constructor === BaseCanvasFactory) {\n unreachable(\"Cannot initialize BaseCanvasFactory.\");\n }\n }\n\n create(width, height) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n const canvas = this._createCanvas(width, height);\n return {\n canvas,\n context: canvas.getContext(\"2d\"),\n };\n }\n\n reset(canvasAndContext, width, height) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid canvas size\");\n }\n canvasAndContext.canvas.width = width;\n canvasAndContext.canvas.height = height;\n }\n\n destroy(canvasAndContext) {\n if (!canvasAndContext.canvas) {\n throw new Error(\"Canvas is not specified\");\n }\n // Zeroing the width and height cause Firefox to release graphics\n // resources immediately, which can greatly reduce memory consumption.\n canvasAndContext.canvas.width = 0;\n canvasAndContext.canvas.height = 0;\n canvasAndContext.canvas = null;\n canvasAndContext.context = null;\n }\n\n /**\n * @private\n */\n _createCanvas(width, height) {\n unreachable(\"Abstract method `_createCanvas` called.\");\n }\n}\n\nclass BaseCMapReaderFactory {\n constructor({ baseUrl = null, isCompressed = false }) {\n if (this.constructor === BaseCMapReaderFactory) {\n unreachable(\"Cannot initialize BaseCMapReaderFactory.\");\n }\n this.baseUrl = baseUrl;\n this.isCompressed = isCompressed;\n }\n\n async fetch({ name }) {\n if (!this.baseUrl) {\n throw new Error(\n 'The CMap \"baseUrl\" parameter must be specified, ensure that ' +\n 'the \"cMapUrl\" and \"cMapPacked\" API parameters are provided.'\n );\n }\n if (!name) {\n throw new Error(\"CMap name must be specified.\");\n }\n const url = this.baseUrl + name + (this.isCompressed ? \".bcmap\" : \"\");\n const compressionType = this.isCompressed\n ? CMapCompressionType.BINARY\n : CMapCompressionType.NONE;\n\n return this._fetchData(url, compressionType).catch(reason => {\n throw new Error(\n `Unable to load ${this.isCompressed ? \"binary \" : \"\"}CMap at: ${url}`\n );\n });\n }\n\n /**\n * @private\n */\n _fetchData(url, compressionType) {\n unreachable(\"Abstract method `_fetchData` called.\");\n }\n}\n\nclass BaseStandardFontDataFactory {\n constructor({ baseUrl = null }) {\n if (this.constructor === BaseStandardFontDataFactory) {\n unreachable(\"Cannot initialize BaseStandardFontDataFactory.\");\n }\n this.baseUrl = baseUrl;\n }\n\n async fetch({ filename }) {\n if (!this.baseUrl) {\n throw new Error(\n 'The standard font \"baseUrl\" parameter must be specified, ensure that ' +\n 'the \"standardFontDataUrl\" API parameter is provided.'\n );\n }\n if (!filename) {\n throw new Error(\"Font filename must be specified.\");\n }\n const url = `${this.baseUrl}${filename}`;\n\n return this._fetchData(url).catch(reason => {\n throw new Error(`Unable to load font data at: ${url}`);\n });\n }\n\n /**\n * @private\n */\n _fetchData(url) {\n unreachable(\"Abstract method `_fetchData` called.\");\n }\n}\n\nclass BaseSVGFactory {\n constructor() {\n if (this.constructor === BaseSVGFactory) {\n unreachable(\"Cannot initialize BaseSVGFactory.\");\n }\n }\n\n create(width, height) {\n if (width <= 0 || height <= 0) {\n throw new Error(\"Invalid SVG dimensions\");\n }\n const svg = this._createSVG(\"svg:svg\");\n svg.setAttribute(\"version\", \"1.1\");\n svg.setAttribute(\"width\", `${width}px`);\n svg.setAttribute(\"height\", `${height}px`);\n svg.setAttribute(\"preserveAspectRatio\", \"none\");\n svg.setAttribute(\"viewBox\", `0 0 ${width} ${height}`);\n\n return svg;\n }\n\n createElement(type) {\n if (typeof type !== \"string\") {\n throw new Error(\"Invalid SVG element type\");\n }\n return this._createSVG(type);\n }\n\n /**\n * @private\n */\n _createSVG(type) {\n unreachable(\"Abstract method `_createSVG` called.\");\n }\n}\n\nexport {\n BaseCanvasFactory,\n BaseCMapReaderFactory,\n BaseStandardFontDataFactory,\n BaseSVGFactory,\n};\n","/* Copyright 2012 Mozilla Foundation\n *\n * Licensed under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n\n/**\n * @module pdfjsLib\n */\n\nimport {\n AbortException,\n assert,\n createPromiseCapability,\n getVerbosityLevel,\n info,\n InvalidPDFException,\n isArrayBuffer,\n isSameOrigin,\n MissingPDFException,\n PasswordException,\n setVerbosityLevel,\n shadow,\n stringToBytes,\n UnexpectedResponseException,\n UnknownErrorException,\n unreachable,\n warn,\n} from \"../shared/util.js\";\nimport {\n deprecated,\n DOMCanvasFactory,\n DOMCMapReaderFactory,\n DOMStandardFontDataFactory,\n isDataScheme,\n loadScript,\n PageViewport,\n RenderingCancelledException,\n StatTimer,\n} from \"./display_utils.js\";\nimport { FontFaceObject, FontLoader } from \"./font_loader.js\";\nimport {\n NodeCanvasFactory,\n NodeCMapReaderFactory,\n NodeStandardFontDataFactory,\n} from \"./node_utils.js\";\nimport { AnnotationStorage } from \"./annotation_storage.js\";\nimport { CanvasGraphics } from \"./canvas.js\";\nimport { GlobalWorkerOptions } from \"./worker_options.js\";\nimport { isNodeJS } from \"../shared/is_node.js\";\nimport { MessageHandler } from \"../shared/message_handler.js\";\nimport { Metadata } from \"./metadata.js\";\nimport { OptionalContentConfig } from \"./optional_content_config.js\";\nimport { PDFDataTransportStream } from \"./transport_stream.js\";\n\nconst DEFAULT_RANGE_CHUNK_SIZE = 65536; // 2^16 = 65536\nconst RENDERING_CANCELLED_TIMEOUT = 100; // ms\n\nconst DefaultCanvasFactory =\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) && isNodeJS\n ? NodeCanvasFactory\n : DOMCanvasFactory;\nconst DefaultCMapReaderFactory =\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) && isNodeJS\n ? NodeCMapReaderFactory\n : DOMCMapReaderFactory;\nconst DefaultStandardFontDataFactory =\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) && isNodeJS\n ? NodeStandardFontDataFactory\n : DOMStandardFontDataFactory;\n\n/**\n * @typedef {function} IPDFStreamFactory\n * @param {DocumentInitParameters} params - The document initialization\n * parameters. The \"url\" key is always present.\n * @returns {Promise} A promise, which is resolved with an instance of\n * {IPDFStream}.\n * @ignore\n */\n\n/**\n * @type IPDFStreamFactory\n * @private\n */\nlet createPDFNetworkStream;\n\n/**\n * Sets the function that instantiates an {IPDFStream} as an alternative PDF\n * data transport.\n *\n * @param {IPDFStreamFactory} pdfNetworkStreamFactory - The factory function\n * that takes document initialization parameters (including a \"url\") and\n * returns a promise which is resolved with an instance of {IPDFStream}.\n * @ignore\n */\nfunction setPDFNetworkStreamFactory(pdfNetworkStreamFactory) {\n createPDFNetworkStream = pdfNetworkStreamFactory;\n}\n\n/**\n * @typedef { Int8Array | Uint8Array | Uint8ClampedArray |\n * Int16Array | Uint16Array |\n * Int32Array | Uint32Array | Float32Array |\n * Float64Array\n * } TypedArray\n */\n\n/**\n * @typedef {Object} RefProxy\n * @property {number} num\n * @property {number} gen\n */\n\n/**\n * Document initialization / loading parameters object.\n *\n * @typedef {Object} DocumentInitParameters\n * @property {string|URL} [url] - The URL of the PDF.\n * @property {TypedArray|Array|string} [data] - Binary PDF data. Use\n * typed arrays (Uint8Array) to improve the memory usage. If PDF data is\n * BASE64-encoded, use `atob()` to convert it to a binary string first.\n * @property {Object} [httpHeaders] - Basic authentication headers.\n * @property {boolean} [withCredentials] - Indicates whether or not\n * cross-site Access-Control requests should be made using credentials such\n * as cookies or authorization headers. The default is `false`.\n * @property {string} [password] - For decrypting password-protected PDFs.\n * @property {TypedArray} [initialData] - A typed array with the first portion\n * or all of the pdf data. Used by the extension since some data is already\n * loaded before the switch to range requests.\n * @property {number} [length] - The PDF file length. It's used for progress\n * reports and range requests operations.\n * @property {PDFDataRangeTransport} [range] - Allows for using a custom range\n * transport implementation.\n * @property {number} [rangeChunkSize] - Specify maximum number of bytes fetched\n * per range request. The default value is {@link DEFAULT_RANGE_CHUNK_SIZE}.\n * @property {PDFWorker} [worker] - The worker that will be used for loading and\n * parsing the PDF data.\n * @property {number} [verbosity] - Controls the logging level; the constants\n * from {@link VerbosityLevel} should be used.\n * @property {string} [docBaseUrl] - The base URL of the document, used when\n * attempting to recover valid absolute URLs for annotations, and outline\n * items, that (incorrectly) only specify relative URLs.\n * @property {string} [cMapUrl] - The URL where the predefined Adobe CMaps are\n * located. Include the trailing slash.\n * @property {boolean} [cMapPacked] - Specifies if the Adobe CMaps are binary\n * packed or not.\n * @property {Object} [CMapReaderFactory] - The factory that will be used when\n * reading built-in CMap files. Providing a custom factory is useful for\n * environments without Fetch API or `XMLHttpRequest` support, such as\n * Node.js. The default value is {DOMCMapReaderFactory}.\n * @property {boolean} [useSystemFonts] - When `true`, fonts that aren't\n * embedded in the PDF document will fallback to a system font.\n * The default value is `true` in web environments and `false` in Node.js;\n * unless `disableFontFace === true` in which case this defaults to `false`\n * regardless of the environment (to prevent completely broken fonts).\n * @property {string} [standardFontDataUrl] - The URL where the standard font\n * files are located. Include the trailing slash.\n * @property {Object} [StandardFontDataFactory] - The factory that will be used\n * when reading the standard font files. Providing a custom factory is useful\n * for environments without Fetch API or `XMLHttpRequest` support, such as\n * Node.js. The default value is {DOMStandardFontDataFactory}.\n * @property {boolean} [useWorkerFetch] - Enable using the Fetch API in the\n * worker-thread when reading CMap and standard font files. When `true`,\n * the `CMapReaderFactory` and `StandardFontDataFactory` options are ignored.\n * The default value is `true` in web environments and `false` in Node.js.\n * @property {boolean} [stopAtErrors] - Reject certain promises, e.g.\n * `getOperatorList`, `getTextContent`, and `RenderTask`, when the associated\n * PDF data cannot be successfully parsed, instead of attempting to recover\n * whatever possible of the data. The default value is `false`.\n * @property {number} [maxImageSize] - The maximum allowed image size in total\n * pixels, i.e. width * height. Images above this value will not be rendered.\n * Use -1 for no limit, which is also the default value.\n * @property {boolean} [isEvalSupported] - Determines if we can evaluate strings\n * as JavaScript. Primarily used to improve performance of font rendering, and\n * when parsing PDF functions. The default value is `true`.\n * @property {boolean} [disableFontFace] - By default fonts are converted to\n * OpenType fonts and loaded via the Font Loading API or `@font-face` rules.\n * If disabled, fonts will be rendered using a built-in font renderer that\n * constructs the glyphs with primitive path commands.\n * The default value is `false` in web environments and `true` in Node.js.\n * @property {boolean} [fontExtraProperties] - Include additional properties,\n * which are unused during rendering of PDF documents, when exporting the\n * parsed font data from the worker-thread. This may be useful for debugging\n * purposes (and backwards compatibility), but note that it will lead to\n * increased memory usage. The default value is `false`.\n * @property {boolean} [enableXfa] - Render Xfa forms if any.\n * The default value is `false`.\n * @property {HTMLDocument} [ownerDocument] - Specify an explicit document\n * context to create elements with and to load resources, such as fonts,\n * into. Defaults to the current document.\n * @property {boolean} [disableRange] - Disable range request loading of PDF\n * files. When enabled, and if the server supports partial content requests,\n * then the PDF will be fetched in chunks. The default value is `false`.\n * @property {boolean} [disableStream] - Disable streaming of PDF file data.\n * By default PDF.js attempts to load PDF files in chunks. The default value\n * is `false`.\n * @property {boolean} [disableAutoFetch] - Disable pre-fetching of PDF file\n * data. When range requests are enabled PDF.js will automatically keep\n * fetching more data even if it isn't needed to display the current page.\n * The default value is `false`.\n *\n * NOTE: It is also necessary to disable streaming, see above, in order for\n * disabling of pre-fetching to work correctly.\n * @property {boolean} [pdfBug] - Enables special hooks for debugging PDF.js\n * (see `web/debugger.js`). The default value is `false`.\n */\n\n/**\n * This is the main entry point for loading a PDF and interacting with it.\n *\n * NOTE: If a URL is used to fetch the PDF data a standard Fetch API call (or\n * XHR as fallback) is used, which means it must follow same origin rules,\n * e.g. no cross-domain requests without CORS.\n *\n * @param {string|URL|TypedArray|PDFDataRangeTransport|DocumentInitParameters}\n * src - Can be a URL where a PDF file is located, a typed array (Uint8Array)\n * already populated with data, or a parameter object.\n * @returns {PDFDocumentLoadingTask}\n */\nfunction getDocument(src) {\n const task = new PDFDocumentLoadingTask();\n\n let source;\n if (typeof src === \"string\" || src instanceof URL) {\n source = { url: src };\n } else if (isArrayBuffer(src)) {\n source = { data: src };\n } else if (src instanceof PDFDataRangeTransport) {\n source = { range: src };\n } else {\n if (typeof src !== \"object\") {\n throw new Error(\n \"Invalid parameter in getDocument, \" +\n \"need either string, URL, Uint8Array, or parameter object.\"\n );\n }\n if (!src.url && !src.data && !src.range) {\n throw new Error(\n \"Invalid parameter object: need either .data, .range or .url\"\n );\n }\n source = src;\n }\n const params = Object.create(null);\n let rangeTransport = null,\n worker = null;\n\n for (const key in source) {\n const value = source[key];\n\n switch (key) {\n case \"url\":\n if (typeof window !== \"undefined\") {\n try {\n // The full path is required in the 'url' field.\n params[key] = new URL(value, window.location).href;\n continue;\n } catch (ex) {\n warn(`Cannot create valid URL: \"${ex}\".`);\n }\n } else if (typeof value === \"string\" || value instanceof URL) {\n params[key] = value.toString(); // Support Node.js environments.\n continue;\n }\n throw new Error(\n \"Invalid PDF url data: \" +\n \"either string or URL-object is expected in the url property.\"\n );\n case \"range\":\n rangeTransport = value;\n continue;\n case \"worker\":\n worker = value;\n continue;\n case \"data\":\n // Converting string or array-like data to Uint8Array.\n if (\n typeof PDFJSDev !== \"undefined\" &&\n PDFJSDev.test(\"GENERIC\") &&\n isNodeJS &&\n typeof Buffer !== \"undefined\" && // eslint-disable-line no-undef\n value instanceof Buffer // eslint-disable-line no-undef\n ) {\n params[key] = new Uint8Array(value);\n } else if (value instanceof Uint8Array) {\n break; // Use the data as-is when it's already a Uint8Array.\n } else if (typeof value === \"string\") {\n params[key] = stringToBytes(value);\n } else if (\n typeof value === \"object\" &&\n value !== null &&\n !isNaN(value.length)\n ) {\n params[key] = new Uint8Array(value);\n } else if (isArrayBuffer(value)) {\n params[key] = new Uint8Array(value);\n } else {\n throw new Error(\n \"Invalid PDF binary data: either typed array, \" +\n \"string, or array-like object is expected in the data property.\"\n );\n }\n continue;\n }\n params[key] = value;\n }\n\n params.rangeChunkSize = params.rangeChunkSize || DEFAULT_RANGE_CHUNK_SIZE;\n params.CMapReaderFactory =\n params.CMapReaderFactory || DefaultCMapReaderFactory;\n params.StandardFontDataFactory =\n params.StandardFontDataFactory || DefaultStandardFontDataFactory;\n params.ignoreErrors = params.stopAtErrors !== true;\n params.fontExtraProperties = params.fontExtraProperties === true;\n params.pdfBug = params.pdfBug === true;\n params.enableXfa = params.enableXfa === true;\n\n if (\n typeof params.docBaseUrl !== \"string\" ||\n isDataScheme(params.docBaseUrl)\n ) {\n // Ignore \"data:\"-URLs, since they can't be used to recover valid absolute\n // URLs anyway. We want to avoid sending them to the worker-thread, since\n // they contain the *entire* PDF document and can thus be arbitrarily long.\n params.docBaseUrl = null;\n }\n if (!Number.isInteger(params.maxImageSize)) {\n params.maxImageSize = -1;\n }\n if (typeof params.useWorkerFetch !== \"boolean\") {\n params.useWorkerFetch =\n params.CMapReaderFactory === DOMCMapReaderFactory &&\n params.StandardFontDataFactory === DOMStandardFontDataFactory;\n }\n if (typeof params.isEvalSupported !== \"boolean\") {\n params.isEvalSupported = true;\n }\n if (typeof params.disableFontFace !== \"boolean\") {\n params.disableFontFace =\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) && isNodeJS;\n }\n if (typeof params.useSystemFonts !== \"boolean\") {\n params.useSystemFonts =\n !(\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) &&\n isNodeJS\n ) && !params.disableFontFace;\n }\n if (typeof params.ownerDocument === \"undefined\") {\n params.ownerDocument = globalThis.document;\n }\n\n if (typeof params.disableRange !== \"boolean\") {\n params.disableRange = false;\n }\n if (typeof params.disableStream !== \"boolean\") {\n params.disableStream = false;\n }\n if (typeof params.disableAutoFetch !== \"boolean\") {\n params.disableAutoFetch = false;\n }\n\n // Set the main-thread verbosity level.\n setVerbosityLevel(params.verbosity);\n\n if (!worker) {\n const workerParams = {\n verbosity: params.verbosity,\n port: GlobalWorkerOptions.workerPort,\n };\n // Worker was not provided -- creating and owning our own. If message port\n // is specified in global worker options, using it.\n worker = workerParams.port\n ? PDFWorker.fromPort(workerParams)\n : new PDFWorker(workerParams);\n task._worker = worker;\n }\n const docId = task.docId;\n worker.promise\n .then(function () {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n\n const workerIdPromise = _fetchDocument(\n worker,\n params,\n rangeTransport,\n docId\n );\n const networkStreamPromise = new Promise(function (resolve) {\n let networkStream;\n if (rangeTransport) {\n networkStream = new PDFDataTransportStream(\n {\n length: params.length,\n initialData: params.initialData,\n progressiveDone: params.progressiveDone,\n contentDispositionFilename: params.contentDispositionFilename,\n disableRange: params.disableRange,\n disableStream: params.disableStream,\n },\n rangeTransport\n );\n } else if (!params.data) {\n networkStream = createPDFNetworkStream({\n url: params.url,\n length: params.length,\n httpHeaders: params.httpHeaders,\n withCredentials: params.withCredentials,\n rangeChunkSize: params.rangeChunkSize,\n disableRange: params.disableRange,\n disableStream: params.disableStream,\n });\n }\n resolve(networkStream);\n });\n\n return Promise.all([workerIdPromise, networkStreamPromise]).then(\n function ([workerId, networkStream]) {\n if (task.destroyed) {\n throw new Error(\"Loading aborted\");\n }\n\n const messageHandler = new MessageHandler(\n docId,\n workerId,\n worker.port\n );\n messageHandler.postMessageTransfers = worker.postMessageTransfers;\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 the\n * `MessageHandler` is known.\n * @private\n */\nfunction _fetchDocument(worker, source, pdfDataRangeTransport, docId) {\n if (worker.destroyed) {\n return Promise.reject(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 return worker.messageHandler\n .sendWithPromise(\"GetDocRequest\", {\n docId,\n apiVersion:\n typeof PDFJSDev !== \"undefined\" && !PDFJSDev.test(\"TESTING\")\n ? PDFJSDev.eval(\"BUNDLE_VERSION\")\n : null,\n // Only send the required properties, and *not* the entire object.\n source: {\n data: source.data,\n url: source.url,\n password: source.password,\n disableAutoFetch: source.disableAutoFetch,\n rangeChunkSize: source.rangeChunkSize,\n length: source.length,\n },\n maxImageSize: source.maxImageSize,\n disableFontFace: source.disableFontFace,\n postMessageTransfers: worker.postMessageTransfers,\n docBaseUrl: source.docBaseUrl,\n ignoreErrors: source.ignoreErrors,\n isEvalSupported: source.isEvalSupported,\n fontExtraProperties: source.fontExtraProperties,\n enableXfa: source.enableXfa,\n useSystemFonts: source.useSystemFonts,\n cMapUrl: source.useWorkerFetch ? source.cMapUrl : null,\n standardFontDataUrl: source.useWorkerFetch\n ? source.standardFontDataUrl\n : null,\n })\n .then(function (workerId) {\n if (worker.destroyed) {\n throw new Error(\"Worker was destroyed\");\n }\n return workerId;\n });\n}\n\n/**\n * @typedef {Object} OnProgressParameters\n * @property {number} loaded - Currently loaded number of bytes.\n * @property {number} total - Total number of bytes in the PDF file.\n */\n\n/**\n * The loading task controls the operations required to load a PDF document\n * (such as network requests) and provides a way to listen for completion,\n * after which individual pages can be rendered.\n */\nclass PDFDocumentLoadingTask {\n static get idCounters() {\n return shadow(this, \"idCounters\", { doc: 0 });\n }\n\n constructor() {\n this._capability = createPromiseCapability();\n this._transport = null;\n this._worker = null;\n\n /**\n * Unique identifier for the document loading task.\n * @type {string}\n */\n this.docId = `d${PDFDocumentLoadingTask.idCounters.doc++}`;\n\n /**\n * Whether the loading task is destroyed or not.\n * @type {boolean}\n */\n this.destroyed = false;\n\n /**\n * Callback to request a password if a wrong or no password was provided.\n * The callback receives two parameters: a function that should be called\n * with the new password, and a reason (see {@link PasswordResponses}).\n * @type {function}\n */\n this.onPassword = null;\n\n /**\n * Callback to be able to monitor the loading progress of the PDF file\n * (necessary to implement e.g. a loading bar).\n * The callback receives an {@link OnProgressParameters} argument.\n * @type {function}\n */\n this.onProgress = null;\n\n /**\n * Callback for when an unsupported feature is used in the PDF document.\n * The callback receives an {@link UNSUPPORTED_FEATURES} argument.\n * @type {function}\n */\n this.onUnsupportedFeature = null;\n }\n\n /**\n * Promise for document loading task completion.\n * @type {Promise}\n */\n get promise() {\n return this._capability.promise;\n }\n\n /**\n * Abort all network requests and destroy the worker.\n * @returns {Promise} A promise that is resolved when destruction is\n * completed.\n */\n destroy() {\n this.destroyed = true;\n\n const transportDestroyed = !this._transport\n ? Promise.resolve()\n : this._transport.destroy();\n return transportDestroyed.then(() => {\n this._transport = null;\n if (this._worker) {\n this._worker.destroy();\n this._worker = null;\n }\n });\n }\n}\n\n/**\n * Abstract class to support range requests file loading.\n */\nclass PDFDataRangeTransport {\n /**\n * @param {number} length\n * @param {Uint8Array} initialData\n * @param {boolean} [progressiveDone]\n * @param {string} [contentDispositionFilename]\n */\n constructor(\n length,\n initialData,\n progressiveDone = false,\n contentDispositionFilename = null\n ) {\n this.length = length;\n this.initialData = initialData;\n this.progressiveDone = progressiveDone;\n this.contentDispositionFilename = contentDispositionFilename;\n\n this._rangeListeners = [];\n this._progressListeners = [];\n this._progressiveReadListeners = [];\n this._progressiveDoneListeners = [];\n this._readyCapability = createPromiseCapability();\n }\n\n addRangeListener(listener) {\n this._rangeListeners.push(listener);\n }\n\n addProgressListener(listener) {\n this._progressListeners.push(listener);\n }\n\n addProgressiveReadListener(listener) {\n this._progressiveReadListeners.push(listener);\n }\n\n addProgressiveDoneListener(listener) {\n this._progressiveDoneListeners.push(listener);\n }\n\n onDataRange(begin, chunk) {\n for (const listener of this._rangeListeners) {\n listener(begin, chunk);\n }\n }\n\n onDataProgress(loaded, total) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressListeners) {\n listener(loaded, total);\n }\n });\n }\n\n onDataProgressiveRead(chunk) {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveReadListeners) {\n listener(chunk);\n }\n });\n }\n\n onDataProgressiveDone() {\n this._readyCapability.promise.then(() => {\n for (const listener of this._progressiveDoneListeners) {\n listener();\n }\n });\n }\n\n transportReady() {\n this._readyCapability.resolve();\n }\n\n requestDataRange(begin, end) {\n unreachable(\"Abstract method PDFDataRangeTransport.requestDataRange\");\n }\n\n abort() {}\n}\n\n/**\n * Proxy to a `PDFDocument` in the worker thread.\n */\nclass PDFDocumentProxy {\n constructor(pdfInfo, transport) {\n this._pdfInfo = pdfInfo;\n this._transport = transport;\n\n if (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) {\n Object.defineProperty(this, \"fingerprint\", {\n get() {\n deprecated(\n \"`PDFDocumentProxy.fingerprint`, \" +\n \"please use `PDFDocumentProxy.fingerprints` instead.\"\n );\n return this.fingerprints[0];\n },\n });\n }\n }\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 * @type {boolean} True if only XFA form.\n */\n get isPureXfa() {\n return !!this._transport._htmlForXfa;\n }\n\n /**\n * NOTE: This is (mostly) intended to support printing of XFA forms.\n *\n * @type {Object | null} An object representing a HTML tree structure\n * to render the XFA, or `null` when no XFA form exists.\n */\n get allXfaHtml() {\n return this._transport._htmlForXfa;\n }\n\n /**\n * @param {number} pageNumber - The page number to get. The first page is 1.\n * @returns {Promise} A promise that is resolved with\n * a {@link PDFPageProxy} object.\n */\n getPage(pageNumber) {\n return this._transport.getPage(pageNumber);\n }\n\n /**\n * @param {RefProxy} ref - The page reference.\n * @returns {Promise} A promise that is resolved with the page index,\n * starting from zero, that is associated with the reference.\n */\n getPageIndex(ref) {\n return this._transport.getPageIndex(ref);\n }\n\n /**\n * @returns {Promise>>} A promise that is resolved\n * with a mapping from named destinations to references.\n *\n * This can be slow for large documents. Use `getDestination` instead.\n */\n getDestinations() {\n return this._transport.getDestinations();\n }\n\n /**\n * @param {string} id - The named destination to get.\n * @returns {Promise | null>} A promise that is resolved with all\n * information of the given named destination, or `null` when the named\n * destination is not present in the PDF file.\n */\n getDestination(id) {\n return this._transport.getDestination(id);\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with\n * an {Array} containing the page labels that correspond to the page\n * indexes, or `null` when no page labels are present in the PDF file.\n */\n getPageLabels() {\n return this._transport.getPageLabels();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a {string}\n * containing the page layout name.\n */\n getPageLayout() {\n return this._transport.getPageLayout();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a {string}\n * containing the page mode name.\n */\n getPageMode() {\n return this._transport.getPageMode();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an\n * {Object} containing the viewer preferences, or `null` when no viewer\n * preferences are present in the PDF file.\n */\n getViewerPreferences() {\n return this._transport.getViewerPreferences();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with an {Array}\n * containing the destination, or `null` when no open action is present\n * in the PDF.\n */\n getOpenAction() {\n return this._transport.getOpenAction();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a lookup table\n * for mapping named attachments to their content.\n */\n getAttachments() {\n return this._transport.getAttachments();\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with\n * an {Array} of all the JavaScript strings in the name tree, or `null`\n * if no JavaScript exists.\n */\n getJavaScript() {\n return this._transport.getJavaScript();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with\n * an {Object} with the JavaScript actions:\n * - from the name tree (like getJavaScript);\n * - from A or AA entries in the catalog dictionary.\n * , or `null` if no JavaScript exists.\n */\n getJSActions() {\n return this._transport.getDocJSActions();\n }\n\n /**\n * @typedef {Object} OutlineNode\n * @property {string} title\n * @property {boolean} bold\n * @property {boolean} italic\n * @property {Uint8ClampedArray} color - The color in RGB format to use for\n * display purposes.\n * @property {string | Array | null} dest\n * @property {string | null} url\n * @property {string | undefined} unsafeUrl\n * @property {boolean | undefined} newWindow\n * @property {number | undefined} count\n * @property {Array} items\n */\n\n /**\n * @returns {Promise>} A promise that is resolved with an\n * {Array} that is a tree outline (if it has one) of the PDF file.\n */\n getOutline() {\n return this._transport.getOutline();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with\n * an {@link OptionalContentConfig} that contains all the optional content\n * groups (assuming that the document has any).\n */\n getOptionalContentConfig() {\n return this._transport.getOptionalContentConfig();\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with\n * an {Array} that contains the permission flags for the PDF document, or\n * `null` when no permissions are present in the PDF file.\n */\n getPermissions() {\n return this._transport.getPermissions();\n }\n\n /**\n * @returns {Promise<{ info: Object, metadata: Metadata }>} A promise that is\n * resolved with an {Object} that has `info` and `metadata` properties.\n * `info` is an {Object} filled with anything available in the information\n * dictionary and similarly `metadata` is a {Metadata} object with\n * information from the metadata section of the PDF.\n */\n getMetadata() {\n return this._transport.getMetadata();\n }\n\n /**\n * @typedef {Object} MarkInfo\n * Properties correspond to Table 321 of the PDF 32000-1:2008 spec.\n * @property {boolean} Marked\n * @property {boolean} UserProperties\n * @property {boolean} Suspects\n */\n\n /**\n * @returns {Promise} A promise that is resolved with\n * a {MarkInfo} object that contains the MarkInfo flags for the PDF\n * document, or `null` when no MarkInfo values are present in the PDF file.\n */\n getMarkInfo() {\n return this._transport.getMarkInfo();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a\n * {TypedArray} that has the raw data from the PDF.\n */\n getData() {\n return this._transport.getData();\n }\n\n /**\n * @returns {Promise<{ length: number }>} A promise that is resolved when the\n * document's data is loaded. It is resolved with an {Object} that contains\n * the `length` property that indicates size of the PDF data in bytes.\n */\n getDownloadInfo() {\n return this._transport.downloadInfoCapability.promise;\n }\n\n /**\n * @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 * @returns {Promise} A promise this is resolved with\n * current statistics about document structures (see\n * {@link PDFDocumentStats}).\n */\n getStats() {\n return this._transport.getStats();\n }\n\n /**\n * Cleans up resources allocated by the document on both the main and worker\n * threads.\n *\n * NOTE: Do not, under any circumstances, call this method when rendering is\n * currently ongoing since that may lead to rendering errors.\n *\n * @param {boolean} [keepLoadedFonts] - Let fonts remain attached to the DOM.\n * NOTE: This will increase persistent memory usage, hence don't use this\n * option unless absolutely necessary. The default value is `false`.\n * @returns {Promise} A promise that is resolved when clean-up has finished.\n */\n cleanup(keepLoadedFonts = false) {\n return this._transport.startCleanup(keepLoadedFonts || this.isPureXfa);\n }\n\n /**\n * Destroys the current document instance and terminates the worker.\n */\n destroy() {\n return this.loadingTask.destroy();\n }\n\n /**\n * @type {DocumentInitParameters} A subset of the current\n * {DocumentInitParameters}, which are needed in the viewer.\n */\n get loadingParams() {\n return this._transport.loadingParams;\n }\n\n /**\n * @type {PDFDocumentLoadingTask} The loadingTask for the current document.\n */\n get loadingTask() {\n return this._transport.loadingTask;\n }\n\n /**\n * @returns {Promise} A promise that is resolved with a\n * {Uint8Array} containing the full data of the saved document.\n */\n saveDocument() {\n if (\n (typeof PDFJSDev === \"undefined\" || PDFJSDev.test(\"GENERIC\")) &&\n this._transport.annotationStorage.size <= 0\n ) {\n deprecated(\n \"saveDocument called while `annotationStorage` is empty, \" +\n \"please use the getData-method instead.\"\n );\n }\n return this._transport.saveDocument();\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with an\n * {Array} containing /AcroForm field data for the JS sandbox,\n * or `null` when no field data is present in the PDF file.\n */\n getFieldObjects() {\n return this._transport.getFieldObjects();\n }\n\n /**\n * @returns {Promise} A promise that is resolved with `true`\n * if some /AcroForm fields have JavaScript actions.\n */\n hasJSActions() {\n return this._transport.hasJSActions();\n }\n\n /**\n * @returns {Promise | null>} A promise that is resolved with an\n * {Array} containing IDs of annotations that have a calculation\n * action, or `null` when no such annotations are present in the PDF file.\n */\n getCalculationOrderIds() {\n return this._transport.getCalculationOrderIds();\n }\n}\n\n/**\n * Page getViewport parameters.\n *\n * @typedef {Object} GetViewportParameters\n * @property {number} scale - The desired scale of the viewport.\n * @property {number} [rotation] - The desired rotation, in degrees, of\n * the viewport. If omitted it defaults to the page rotation.\n * @property {number} [offsetX] - The horizontal, i.e. x-axis, offset.\n * The default value is `0`.\n * @property {number} [offsetY] - The vertical, i.e. y-axis, offset.\n * The default value is `0`.\n * @property {boolean} [dontFlip] - If true, the y-axis will not be\n * flipped. The default value is `false`.\n */\n\n/**\n * Page getTextContent parameters.\n *\n * @typedef {Object} getTextContentParameters\n * @property {boolean} normalizeWhitespace - Replaces all occurrences of\n * whitespace with standard spaces (0x20). The default value is `false`.\n * @property {boolean} disableCombineTextItems - Do not attempt to combine\n * same line {@link TextItem}'s. The default value is `false`.\n * @property {boolean} [includeMarkedContent] - When true include marked\n * content items in the items array of TextContent. The default is `false`.\n */\n\n/**\n * Page text content.\n *\n * @typedef {Object} TextContent\n * @property {Array} items - Array of\n * {@link TextItem} and {@link TextMarkedContent} objects. TextMarkedContent\n * items are included when includeMarkedContent is true.\n * @property {Object} styles - {@link TextStyle} objects,\n * indexed by font name.\n */\n\n/**\n * Page text content part.\n *\n * @typedef {Object} TextItem\n * @property {string} str - Text content.\n * @property {string} dir - Text direction: 'ttb', 'ltr' or 'rtl'.\n * @property {Array} transform - Transformation matrix.\n * @property {number} width - Width in device space.\n * @property {number} height - Height in device space.\n * @property {string} fontName - Font name used by PDF.js for converted font.\n * @property {boolean} hasEOL - Indicating if the text content is followed by a\n * line-break.\n */\n\n/**\n * Page text marked content part.\n *\n * @typedef {Object} TextMarkedContent\n * @property {string} type - Either 'beginMarkedContent',\n * 'beginMarkedContentProps', or 'endMarkedContent'.\n * @property {string} id - The marked content identifier. Only used for type\n * 'beginMarkedContentProps'.\n */\n\n/**\n * Text style.\n *\n * @typedef {Object} TextStyle\n * @property {number} ascent - Font ascent.\n * @property {number} descent - Font descent.\n * @property {boolean} vertical - Whether or not the text is in vertical mode.\n * @property {string} fontFamily - The possible font family.\n */\n\n/**\n * Page annotation parameters.\n *\n * @typedef {Object} GetAnnotationsParameters\n * @property {string} [intent] - Determines the annotations that are fetched,\n * can be either 'display' (viewable annotations) or 'print' (printable\n * annotations). If the parameter is omitted, all annotations are fetched.\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' or 'print'.\n * The default value is 'display'.\n * @property {boolean} [renderInteractiveForms] - Whether or not interactive\n * form elements are rendered in the display layer. If so, we do not render\n * them on the canvas as well. The default value is `false`.\n * @property {Array} [transform] - Additional transform, applied just\n * before viewport transform.\n * @property {Object} [imageLayer] - An object that has `beginLayout`,\n * `endLayout` and `appendImage` functions.\n * @property {Object} [canvasFactory] - The factory instance that will be used\n * when creating canvases. The default value is {new DOMCanvasFactory()}.\n * @property {Object | string} [background] - Background to use for the canvas.\n * Any valid `canvas.fillStyle` can be used: a `DOMString` parsed as CSS\n * value, a `CanvasGradient` object (a linear or radial gradient) or\n * a `CanvasPattern` object (a repetitive image). The default value is\n * 'rgb(255,255,255)'.\n * @property {boolean} [includeAnnotationStorage] - Render stored interactive\n * form element data, from the {@link AnnotationStorage}-instance, onto the\n * canvas itself; useful e.g. for printing. The default value is `false`.\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 */\n\n/**\n * Page getOperatorList parameters.\n *\n * @typedef {Object} GetOperatorListParameters\n * @property {string} [intent] - Rendering intent, can be 'display' or 'print'.\n * The default value is 'display'.\n */\n\n/**\n * Structure tree node. The root node will have a role \"Root\".\n *\n * @typedef {Object} StructTreeNode\n * @property {Array} children - Array of\n * {@link StructTreeNode} and {@link StructTreeContent} objects.\n * @property {string} role - element's role, already mapped if a role map exists\n * in the PDF.\n */\n\n/**\n * Structure tree content.\n *\n * @typedef {Object} StructTreeContent\n * @property {string} type - either \"content\" for page and stream structure\n * elements or \"object\" for object references.\n * @property {string} id - unique id that will map to the text layer.\n */\n\n/**\n * PDF page operator list.\n *\n * @typedef {Object} PDFOperatorList\n * @property {Array} fnArray - Array containing the operator functions.\n * @property {Array} argsArray - Array containing the arguments of the\n * functions.\n */\n\n/**\n * Proxy to a `PDFPage` in the worker thread.\n */\nclass PDFPageProxy {\n constructor(pageIndex, pageInfo, transport, ownerDocument, pdfBug = false) {\n this._pageIndex = pageIndex;\n this._pageInfo = pageInfo;\n this._ownerDocument = ownerDocument;\n this._transport = transport;\n this._stats = pdfBug ? new StatTimer() : null;\n this._pdfBug = pdfBug;\n this.commonObjs = transport.commonObjs;\n this.objs = new PDFObjects();\n\n this.cleanupAfterRender = false;\n this.pendingCleanup = false;\n this._intentStates = new Map();\n this.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 = null } = {}) {\n const renderingIntent =\n intent === \"display\" || intent === \"print\" ? intent : null;\n\n if (\n !this._annotationsPromise ||\n this._annotationsIntent !== renderingIntent\n ) {\n this._annotationsPromise = this._transport.getAnnotations(\n this._pageIndex,\n renderingIntent\n );\n this._annotationsIntent = renderingIntent;\n }\n return this._annotationsPromise;\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 renderInteractiveForms = false,\n transform = null,\n imageLayer = null,\n canvasFactory = null,\n background = null,\n includeAnnotationStorage = false,\n optionalContentConfigPromise = null,\n }) {\n if (this._stats) {\n this._stats.time(\"Overall\");\n }\n\n const renderingIntent = intent === \"print\" ? \"print\" : \"display\";\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(renderingIntent);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(renderingIntent, 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 annotationStorage = includeAnnotationStorage\n ? this._transport.annotationStorage.serializable\n : null;\n\n // If there's no displayReadyCapability yet, then the operatorList\n // was never requested before. Make the request and create the promise.\n if (!intentState.displayReadyCapability) {\n intentState.displayReadyCapability = createPromiseCapability();\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n };\n\n if (this._stats) {\n this._stats.time(\"Page Request\");\n }\n this._pumpOperatorList({\n pageIndex: this._pageIndex,\n intent: renderingIntent,\n renderInteractiveForms: renderInteractiveForms === true,\n annotationStorage,\n });\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 || renderingIntent === \"print\") {\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,\n });\n } else {\n internalRenderTask.capability.resolve();\n }\n if (this._stats) {\n this._stats.timeEnd(\"Rendering\");\n this._stats.timeEnd(\"Overall\");\n }\n };\n\n const internalRenderTask = new InternalRenderTask({\n callback: complete,\n // Only include the required properties, and *not* the entire object.\n params: {\n canvasContext,\n viewport,\n transform,\n imageLayer,\n background,\n },\n objs: this.objs,\n commonObjs: this.commonObjs,\n operatorList: intentState.operatorList,\n pageIndex: this._pageIndex,\n canvasFactory: canvasFactoryInstance,\n useRequestAnimationFrame: renderingIntent !== \"print\",\n pdfBug: this._pdfBug,\n });\n\n (intentState.renderTasks ||= new Set()).add(internalRenderTask);\n const renderTask = internalRenderTask.task;\n\n Promise.all([\n intentState.displayReadyCapability.promise,\n optionalContentConfigPromise,\n ])\n .then(([transparency, optionalContentConfig]) => {\n if (this.pendingCleanup) {\n complete();\n return;\n }\n if (this._stats) {\n this._stats.time(\"Rendering\");\n }\n internalRenderTask.initializeGraphics({\n transparency,\n optionalContentConfig,\n });\n internalRenderTask.operatorListChanged();\n })\n .catch(complete);\n\n return renderTask;\n }\n\n /**\n * @param {GetOperatorListParameters} params - Page getOperatorList\n * parameters.\n * @returns {Promise} A promise resolved with an\n * {@link PDFOperatorList} object that represents the page's operator list.\n */\n getOperatorList({ intent = \"display\" } = {}) {\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 renderingIntent = `oplist-${\n intent === \"print\" ? \"print\" : \"display\"\n }`;\n let intentState = this._intentStates.get(renderingIntent);\n if (!intentState) {\n intentState = Object.create(null);\n this._intentStates.set(renderingIntent, intentState);\n }\n let opListTask;\n\n if (!intentState.opListReadCapability) {\n opListTask = Object.create(null);\n opListTask.operatorListChanged = operatorListChanged;\n intentState.opListReadCapability = createPromiseCapability();\n (intentState.renderTasks ||= new Set()).add(opListTask);\n intentState.operatorList = {\n fnArray: [],\n argsArray: [],\n lastChunk: false,\n };\n\n if (this._stats) {\n this._stats.time(\"Page Request\");\n }\n this._pumpOperatorList({\n pageIndex: this._pageIndex,\n intent: renderingIntent,\n });\n }\n return intentState.opListReadCapability.promise;\n }\n\n /**\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @returns {ReadableStream} Stream for reading text content chunks.\n */\n streamTextContent({\n normalizeWhitespace = false,\n disableCombineTextItems = false,\n includeMarkedContent = false,\n } = {}) {\n const TEXT_CONTENT_CHUNK_SIZE = 100;\n\n return this._transport.messageHandler.sendWithStream(\n \"GetTextContent\",\n {\n pageIndex: this._pageIndex,\n normalizeWhitespace: normalizeWhitespace === true,\n combineTextItems: disableCombineTextItems !== true,\n includeMarkedContent: includeMarkedContent === true,\n },\n {\n highWaterMark: TEXT_CONTENT_CHUNK_SIZE,\n size(textContent) {\n return textContent.items.length;\n },\n }\n );\n }\n\n /**\n * @param {getTextContentParameters} params - getTextContent parameters.\n * @returns {Promise} A promise that is resolved with a\n * {@link TextContent} object that represents the page's text content.\n */\n getTextContent(params = {}) {\n 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 this._transport.pageCache[this._pageIndex] = null;\n\n const waitOn = [];\n for (const [intent, intentState] of this._intentStates) {\n this._abortOperatorList({\n intentState,\n reason: new Error(\"Page was destroyed.\"),\n force: true,\n });\n\n if (intent.startsWith(\"oplist-\")) {\n // Avoid errors below, since the renderTasks are just stubs.\n continue;\n }\n for (const internalRenderTask of intentState.renderTasks) {\n waitOn.push(internalRenderTask.completed);\n internalRenderTask.cancel();\n }\n }\n this.objs.clear();\n this._annotationsPromise = null;\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._annotationsPromise = null;\n this._jsActionsPromise = null;\n this._structTreePromise = null;\n if (resetStats && this._stats) {\n this._stats = new StatTimer();\n }\n this.pendingCleanup = false;\n return true;\n }\n\n /**\n * @private\n */\n _startRenderPage(transparency, intent) {\n const intentState = this._intentStates.get(intent);\n if (!intentState) {\n return; // Rendering was cancelled.\n }\n if (this._stats) {\n this._stats.timeEnd(\"Page Request\");\n }\n // TODO Refactor RenderPageRequest to separate rendering\n // and operator list logic\n if (intentState.displayReadyCapability) {\n intentState.displayReadyCapability.resolve(transparency);\n }\n }\n\n /**\n * @private\n */\n _renderPageChunk(operatorListChunk, intentState) {\n // Add the new chunk to the current operator list.\n for (let i = 0, ii = operatorListChunk.length; i < ii; i++) {\n intentState.operatorList.fnArray.push(operatorListChunk.fnArray[i]);\n intentState.operatorList.argsArray.push(operatorListChunk.argsArray[i]);\n }\n intentState.operatorList.lastChunk = operatorListChunk.lastChunk;\n\n // Notify all the rendering tasks there are more operators to be consumed.\n for (const internalRenderTask of intentState.renderTasks) {\n internalRenderTask.operatorListChanged();\n }\n\n if (operatorListChunk.lastChunk) {\n this._tryCleanup();\n }\n }\n\n /**\n * @private\n */\n _pumpOperatorList(args) {\n assert(\n args.intent,\n 'PDFPageProxy._pumpOperatorList: Expected \"intent\" argument.'\n );\n\n const readableStream = this._transport.messageHandler.sendWithStream(\n \"GetOperatorList\",\n args\n );\n const reader = readableStream.getReader();\n\n const intentState = this._intentStates.get(args.intent);\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 assert(\n reason instanceof Error ||\n (typeof reason === \"object\" && reason !== null),\n 'PDFPageProxy._abortOperatorList: Expected \"reason\" argument.'\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 [intent, curIntentState] of this._intentStates) {\n if (curIntentState === intentState) {\n this._intentStates.delete(intent);\n break;\n }\n }\n // ... and force clean-up to ensure that any old state is always removed.\n this.cleanup();\n }\n\n /**\n * @type {Object} Returns page stats, if enabled; returns `null` otherwise.\n */\n get stats() {\n return this._stats;\n }\n}\n\nclass LoopbackPort {\n constructor() {\n this._listeners = [];\n this._deferred = Promise.resolve(undefined);\n }\n\n postMessage(obj, transfers) {\n function cloneValue(value) {\n // Trying to perform a structured clone close to the spec, including\n // transfers.\n if (\n typeof value === \"function\" ||\n typeof value === \"symbol\" ||\n value instanceof URL\n ) {\n throw new Error(\n `LoopbackPort.postMessage - cannot clone: ${value?.toString()}`\n );\n }\n\n if (typeof value !== \"object\" || value === null) {\n return value;\n }\n if (cloned.has(value)) {\n // already cloned the object\n return cloned.get(value);\n }\n let buffer, result;\n if ((buffer = value.buffer) && isArrayBuffer(buffer)) {\n // We found object with ArrayBuffer (typed array).\n if (transfers?.includes(buffer)) {\n result = new value.constructor(\n buffer,\n value.byteOffset,\n value.byteLength\n );\n } else {\n result = new value.constructor(value);\n }\n cloned.set(value, result);\n return result;\n }\n if (value instanceof Map) {\n result = new Map();\n cloned.set(value, result); // Adding to cache now for cyclic references.\n for (const [key, val] of value) {\n result.set(key, cloneValue(val));\n }\n return result;\n }\n if (value instanceof Set) {\n result = new Set();\n cloned.set(value, result); // Adding to cache now for cyclic references.\n for (const val of value) {\n result.add(cloneValue(val));\n }\n return result;\n }\n result = Array.isArray(value) ? [] : Object.create(null);\n cloned.set(value, result); // Adding to cache now for cyclic references.\n // Cloning all value and object properties, however ignoring properties\n // defined via getter.\n for (const i in value) {\n let desc,\n p = value;\n while (!(desc = Object.getOwnPropertyDescriptor(p, i))) {\n p = Object.getPrototypeOf(p);\n }\n if (typeof desc.value === \"undefined\") {\n continue;\n }\n if (typeof desc.value === \"function\" && !value.hasOwnProperty?.(i)) {\n continue;\n }\n result[i] = cloneValue(desc.value);\n }\n return result;\n }\n\n const cloned = new WeakMap();\n const event = { data: cloneValue(obj) };\n\n this._deferred.then(() => {\n for (const listener of this._listeners) {\n listener.call(this, event);\n }\n });\n }\n\n addEventListener(name, listener) {\n this._listeners.push(listener);\n }\n\n removeEventListener(name, listener) {\n const i = this._listeners.indexOf(listener);\n this._listeners.splice(i, 1);\n }\n\n terminate() {\n this._listeners.length = 0;\n }\n}\n\n/**\n * @typedef {Object} PDFWorkerParameters\n * @property {string} [name] - The name of the worker.\n * @property {Object} [port] - The `workerPort` object.\n * @property {number} [verbosity] - Controls the logging level;\n * the constants from {@link VerbosityLevel} should be used.\n */\n\n/** @type {any} */\nconst PDFWorker = (function PDFWorkerClosure() {\n const pdfWorkerPorts = new WeakMap();\n let isWorkerDisabled = false;\n let fallbackWorkerSrc;\n let nextFakeWorkerId = 0;\n let fakeWorkerCapability;\n\n if (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 isWorkerDisabled = true;\n\n 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 fallbackWorkerSrc = pdfjsFilePath.replace(\n /(\\.(?:min\\.)?js)(\\?.*)?$/i,\n \".worker$1$2\"\n );\n }\n }\n }\n\n function getWorkerSrc() {\n if (GlobalWorkerOptions.workerSrc) {\n return GlobalWorkerOptions.workerSrc;\n }\n if (typeof fallbackWorkerSrc !== \"undefined\") {\n if (!isNodeJS) {\n deprecated('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n return fallbackWorkerSrc;\n }\n throw new Error('No \"GlobalWorkerOptions.workerSrc\" specified.');\n }\n\n function getMainThreadWorkerMessageHandler() {\n try {\n return globalThis.pdfjsWorker?.WorkerMessageHandler || null;\n } catch (ex) {\n return null;\n }\n }\n\n // Loads worker code into main-thread.\n function setupFakeWorkerGlobal() {\n if (fakeWorkerCapability) {\n return fakeWorkerCapability.promise;\n }\n fakeWorkerCapability = createPromiseCapability();\n\n const loader = async function () {\n const mainWorkerMessageHandler = getMainThreadWorkerMessageHandler();\n\n if (mainWorkerMessageHandler) {\n // The worker was already loaded using e.g. a `