@pdfme/ui 5.3.16-dev.18 → 5.3.16-dev.19
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.es.js +4 -1
- package/dist/index.umd.js +1 -1
- package/package.json +2 -2
package/dist/index.es.js
CHANGED
@@ -12887,7 +12887,10 @@ function dispatch(a, s) {
|
|
12887
12887
|
}), u in _mods) {
|
12888
12888
|
_mods[u] = !0;
|
12889
12889
|
for (const A in _modifier)
|
12890
|
-
_modifier
|
12890
|
+
if (Object.prototype.hasOwnProperty.call(_modifier, A)) {
|
12891
|
+
const b = modifierMap[_modifier[A]];
|
12892
|
+
hotkeys$1[A] = a[b];
|
12893
|
+
}
|
12891
12894
|
if (!c) return;
|
12892
12895
|
}
|
12893
12896
|
for (const A in _mods)
|
package/dist/index.umd.js
CHANGED
@@ -55,7 +55,7 @@ Defaulting to 2020, but this will stop working in the future.`)),s.ecmaVersion=1
|
|
55
55
|
`;break;default:a+=String.fromCharCode(c);break}this.options.locations&&(++this.curLine,this.lineStart=this.pos),s=this.pos}else++this.pos}},pp.readInvalidTemplateToken=function(){for(;this.pos<this.input.length;this.pos++)switch(this.input[this.pos]){case"\\":++this.pos;break;case"$":if(this.input[this.pos+1]!=="{")break;case"`":return this.finishToken(types$1.invalidTemplate,this.input.slice(this.start,this.pos));case"\r":this.input[this.pos+1]===`
|
56
56
|
`&&++this.pos;case`
|
57
57
|
`:case"\u2028":case"\u2029":++this.curLine,this.lineStart=this.pos+1;break}this.raise(this.start,"Unterminated template")},pp.readEscapedChar=function(a){var s=this.input.charCodeAt(++this.pos);switch(++this.pos,s){case 110:return`
|
58
|
-
`;case 114:return"\r";case 120:return String.fromCharCode(this.readHexChar(2));case 117:return codePointToString(this.readCodePoint());case 116:return" ";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:this.input.charCodeAt(this.pos)===10&&++this.pos;case 10:return this.options.locations&&(this.lineStart=this.pos,++this.curLine),"";case 56:case 57:if(this.strict&&this.invalidStringToken(this.pos-1,"Invalid escape sequence"),a){var c=this.pos-1;this.invalidStringToken(c,"Invalid escape sequence in template string")}default:if(s>=48&&s<=55){var u=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],d=parseInt(u,8);return d>255&&(u=u.slice(0,-1),d=parseInt(u,8)),this.pos+=u.length-1,s=this.input.charCodeAt(this.pos),(u!=="0"||s===56||s===57)&&(this.strict||a)&&this.invalidStringToken(this.pos-1-u.length,a?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(d)}return isNewLine(s)?(this.options.locations&&(this.lineStart=this.pos,++this.curLine),""):String.fromCharCode(s)}},pp.readHexChar=function(a){var s=this.pos,c=this.readInt(16,a);return c===null&&this.invalidStringToken(s,"Bad character escape sequence"),c},pp.readWord1=function(){this.containsEsc=!1;for(var a="",s=!0,c=this.pos,u=this.options.ecmaVersion>=6;this.pos<this.input.length;){var d=this.fullCharCodeAtPos();if(isIdentifierChar(d,u))this.pos+=d<=65535?1:2;else if(d===92){this.containsEsc=!0,a+=this.input.slice(c,this.pos);var p=this.pos;this.input.charCodeAt(++this.pos)!==117&&this.invalidStringToken(this.pos,"Expecting Unicode escape sequence \\uXXXX"),++this.pos;var v=this.readCodePoint();(s?isIdentifierStart:isIdentifierChar)(v,u)||this.invalidStringToken(p,"Invalid Unicode escape"),a+=codePointToString(v),c=this.pos}else break;s=!1}return a+this.input.slice(c,this.pos)},pp.readWord=function(){var a=this.readWord1(),s=types$1.name;return this.keywords.test(a)&&(s=keywords[a]),this.finishToken(s,a)};var version$2="8.14.1";Parser.acorn={Parser,version:version$2,defaultOptions:defaultOptions$1,Position,SourceLocation,getLineInfo,Node,TokenType,tokTypes:types$1,keywordTypes:keywords,TokContext,tokContexts:types$2,isIdentifierChar,isIdentifierStart,Token,isNewLine,lineBreak,lineBreakG,nonASCIIwhitespace};function parseExpressionAt(a,s,c){return Parser.parseExpressionAt(a,s,c)}const expressionCache=new Map,parseDataCache=new Map,parseData=a=>{const s=JSON.stringify(a);if(parseDataCache.has(s))return parseDataCache.get(s);const c=Object.fromEntries(Object.entries(a).map(([u,d])=>{if(typeof d=="string")try{const p=JSON.parse(d);return[u,p]}catch{return[u,d]}return[u,d]}));return parseDataCache.set(s,c),c},padZero=a=>String(a).padStart(2,"0"),formatDate=a=>`${a.getFullYear()}/${padZero(a.getMonth()+1)}/${padZero(a.getDate())}`,formatDateTime=a=>`${formatDate(a)} ${padZero(a.getHours())}:${padZero(a.getMinutes())}`,allowedGlobals={Math,String,Number,Boolean,Array,Object,Date,JSON,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent},validateAST=a=>{switch(a.type){case"Literal":case"Identifier":break;case"BinaryExpression":case"LogicalExpression":{const s=a;validateAST(s.left),validateAST(s.right);break}case"UnaryExpression":{validateAST(a.argument);break}case"ConditionalExpression":{const s=a;validateAST(s.test),validateAST(s.consequent),validateAST(s.alternate);break}case"MemberExpression":{const s=a;if(validateAST(s.object),s.computed)validateAST(s.property);else{const c=s.property.name;if(["constructor","__proto__","prototype"].includes(c))throw new Error("Access to prohibited property");if(typeof c=="string"&&["toLocaleString","valueOf"].includes(c))throw new Error(`Access to prohibited method: ${c}`)}break}case"CallExpression":{const s=a;validateAST(s.callee),s.arguments.forEach(validateAST);break}case"ArrayExpression":{a.elements.forEach(c=>{c&&validateAST(c)});break}case"ObjectExpression":{a.properties.forEach(c=>{const u=c;validateAST(u.key),validateAST(u.value)});break}case"ArrowFunctionExpression":{const s=a;s.params.forEach(c=>{if(c.type!=="Identifier")throw new Error("Only identifier parameters are supported in arrow functions");validateAST(c)}),validateAST(s.body);break}default:throw new Error(`Unsupported syntax in placeholder: ${a.type}`)}},evaluateAST=(a,s)=>{switch(a.type){case"Literal":return a.value;case"Identifier":{const c=a;if(Object.prototype.hasOwnProperty.call(s,c.name))return s[c.name];if(Object.prototype.hasOwnProperty.call(allowedGlobals,c.name))return allowedGlobals[c.name];throw new Error(`Undefined variable: ${c.name}`)}case"BinaryExpression":{const c=a,u=evaluateAST(c.left,s),d=evaluateAST(c.right,s);switch(c.operator){case"+":return u+d;case"-":return u-d;case"*":return u*d;case"/":return u/d;case"%":return u%d;case"**":return u**d;case"==":return u==d;case"!=":return u!=d;case"===":return u===d;case"!==":return u!==d;case"<":return u<d;case">":return u>d;case"<=":return u<=d;case">=":return u>=d;default:throw new Error(`Unsupported operator: ${c.operator}`)}}case"LogicalExpression":{const c=a,u=evaluateAST(c.left,s),d=evaluateAST(c.right,s);switch(c.operator){case"&&":return u&&d;case"||":return u||d;default:throw new Error(`Unsupported operator: ${c.operator}`)}}case"UnaryExpression":{const c=a,u=evaluateAST(c.argument,s);switch(c.operator){case"+":return+u;case"-":return-u;case"!":return!u;default:throw new Error(`Unsupported operator: ${c.operator}`)}}case"ConditionalExpression":{const c=a,u=evaluateAST(c.test,s);return evaluateAST(u?c.consequent:c.alternate,s)}case"MemberExpression":{const c=a,u=evaluateAST(c.object,s);let d;if(c.computed?d=evaluateAST(c.property,s):d=c.property.name,typeof d=="string"||typeof d=="number"){if(typeof d=="string"&&["constructor","__proto__","prototype"].includes(d))throw new Error("Access to prohibited property");return u[d]}else throw new Error("Invalid property access")}case"CallExpression":{const c=a,u=evaluateAST(c.callee,s),d=c.arguments.map(p=>evaluateAST(p,s));if(typeof u=="function")if(c.callee.type==="MemberExpression"){const p=c.callee,v=evaluateAST(p.object,s);if(v!==null&&(typeof v=="object"||typeof v=="number"||typeof v=="string"||typeof v=="boolean"))return u.call(v,...d);throw new Error("Invalid object in member function call")}else return u(...d);else throw new Error("Attempted to call a non-function")}case"ArrowFunctionExpression":{const c=a,u=c.params.map(p=>p.name),d=c.body;return(...p)=>{const v={...s};return u.forEach((A,b)=>{v[A]=p[b]}),evaluateAST(d,v)}}case"ArrayExpression":return a.elements.map(u=>u?evaluateAST(u,s):null);case"ObjectExpression":{const c=a,u={};return c.properties.forEach(d=>{const p=d;let v;if(p.key.type==="Identifier")v=p.key.name;else{const b=evaluateAST(p.key,s);if(typeof b!="string"&&typeof b!="number")throw new Error("Object property keys must be strings or numbers");v=String(b)}const A=evaluateAST(p.value,s);u[v]=A}),u}default:throw new Error(`Unsupported syntax in placeholder: ${a.type}`)}},evaluatePlaceholders=a=>{const{content:s,context:c}=a;let u="",d=0;for(;d<s.length;){const p=s.indexOf("{",d);if(p===-1){u+=s.slice(d);break}u+=s.slice(d,p);let v=1,A=p+1;for(;A<s.length&&v>0;)s[A]==="{"?v++:s[A]==="}"&&v--,A++;if(v===0){const b=s.slice(p+1,A-1).trim();if(expressionCache.has(b)){const g=expressionCache.get(b);try{const x=g(c);u+=String(x)}catch{u+=s.slice(p,A)}}else try{const g=parseExpressionAt(b,0,{ecmaVersion:"latest"});validateAST(g);const x=f=>evaluateAST(g,f);expressionCache.set(b,x);const y=x(c);u+=String(y)}catch{u+=s.slice(p,A)}d=A}else throw new Error("Invalid placeholder")}return u},replacePlaceholders=a=>{const{content:s,variables:c,schemas:u}=a;if(!s||typeof s!="string"||!s.includes("{")||!s.includes("}"))return s;const d=new Date,p=formatDate(d),v=formatDateTime(d),A={...Object.fromEntries(u.flat().map(x=>[x.name,x.readOnly&&x.content||""])),...c},b=parseData(A),g={date:p,dateTime:v,...b};return Object.entries(g).forEach(([x,y])=>{typeof y=="string"&&y.includes("{")&&y.includes("}")&&(g[x]=evaluatePlaceholders({content:y,context:g}))}),evaluatePlaceholders({content:s,context:g})},DEFAULT_LANG="en",DESTROYED_ERR_MSG="[@pdfme/ui] this instance is already destroyed",SELECTABLE_CLASSNAME="selectable",RULER_HEIGHT=30,PAGE_GAP=10,LEFT_SIDEBAR_WIDTH=45,RIGHT_SIDEBAR_WIDTH=400,BACKGROUND_COLOR="rgb(74, 74, 74)",DEFAULT_MAX_ZOOM=2,isff=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function addEvent$1(a,s,c,u){a.addEventListener?a.addEventListener(s,c,u):a.attachEvent&&a.attachEvent("on".concat(s),c)}function removeEvent$1(a,s,c,u){a.removeEventListener?a.removeEventListener(s,c,u):a.detachEvent&&a.detachEvent("on".concat(s),c)}function getMods(a,s){const c=s.slice(0,s.length-1);for(let u=0;u<c.length;u++)c[u]=a[c[u].toLowerCase()];return c}function getKeys$1(a){typeof a!="string"&&(a=""),a=a.replace(/\s/g,"");const s=a.split(",");let c=s.lastIndexOf("");for(;c>=0;)s[c-1]+=",",s.splice(c,1),c=s.lastIndexOf("");return s}function compareArray(a,s){const c=a.length>=s.length?a:s,u=a.length>=s.length?s:a;let d=!0;for(let p=0;p<c.length;p++)u.indexOf(c[p])===-1&&(d=!1);return d}const _keyMap={backspace:8,"⌫":8,tab:9,clear:12,enter:13,"↩":13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,num_0:96,num_1:97,num_2:98,num_3:99,num_4:100,num_5:101,num_6:102,num_7:103,num_8:104,num_9:105,num_multiply:106,num_add:107,num_enter:108,num_subtract:109,num_decimal:110,num_divide:111,"⇪":20,",":188,".":190,"/":191,"`":192,"-":isff?173:189,"=":isff?61:187,";":isff?59:186,"'":222,"[":219,"]":221,"\\":220},_modifier={"⇧":16,shift:16,"⌥":18,alt:18,option:18,"⌃":17,ctrl:17,control:17,"⌘":91,cmd:91,command:91},modifierMap={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},_mods={16:!1,18:!1,17:!1,91:!1},_handlers={};for(let a=1;a<20;a++)_keyMap["f".concat(a)]=111+a;let _downKeys=[],winListendFocus=null,_scope="all";const elementEventMap=new Map,code=a=>_keyMap[a.toLowerCase()]||_modifier[a.toLowerCase()]||a.toUpperCase().charCodeAt(0),getKey$3=a=>Object.keys(_keyMap).find(s=>_keyMap[s]===a),getModifier=a=>Object.keys(_modifier).find(s=>_modifier[s]===a);function setScope(a){_scope=a||"all"}function getScope(){return _scope||"all"}function getPressedKeyCodes(){return _downKeys.slice(0)}function getPressedKeyString(){return _downKeys.map(a=>getKey$3(a)||getModifier(a)||String.fromCharCode(a))}function getAllKeyCodes(){const a=[];return Object.keys(_handlers).forEach(s=>{_handlers[s].forEach(c=>{let{key:u,scope:d,mods:p,shortcut:v}=c;a.push({scope:d,shortcut:v,mods:p,keys:u.split("+").map(A=>code(A))})})}),a}function filter$1(a){const s=a.target||a.srcElement,{tagName:c}=s;let u=!0;const d=c==="INPUT"&&!["checkbox","radio","range","button","file","reset","submit","color"].includes(s.type);return(s.isContentEditable||(d||c==="TEXTAREA"||c==="SELECT")&&!s.readOnly)&&(u=!1),u}function isPressed(a){return typeof a=="string"&&(a=code(a)),_downKeys.indexOf(a)!==-1}function deleteScope(a,s){let c,u;a||(a=getScope());for(const d in _handlers)if(Object.prototype.hasOwnProperty.call(_handlers,d))for(c=_handlers[d],u=0;u<c.length;)c[u].scope===a?c.splice(u,1).forEach(v=>{let{element:A}=v;return removeKeyEvent(A)}):u++;getScope()===a&&setScope(s||"all")}function clearModifier(a){let s=a.keyCode||a.which||a.charCode;const c=_downKeys.indexOf(s);if(c>=0&&_downKeys.splice(c,1),a.key&&a.key.toLowerCase()==="meta"&&_downKeys.splice(0,_downKeys.length),(s===93||s===224)&&(s=91),s in _mods){_mods[s]=!1;for(const u in _modifier)_modifier[u]===s&&(hotkeys$1[u]=!1)}}function unbind(a){if(typeof a>"u")Object.keys(_handlers).forEach(d=>{Array.isArray(_handlers[d])&&_handlers[d].forEach(p=>eachUnbind(p)),delete _handlers[d]}),removeKeyEvent(null);else if(Array.isArray(a))a.forEach(d=>{d.key&&eachUnbind(d)});else if(typeof a=="object")a.key&&eachUnbind(a);else if(typeof a=="string"){for(var s=arguments.length,c=new Array(s>1?s-1:0),u=1;u<s;u++)c[u-1]=arguments[u];let[d,p]=c;typeof d=="function"&&(p=d,d=""),eachUnbind({key:a,scope:d,method:p,splitKey:"+"})}}const eachUnbind=a=>{let{key:s,scope:c,method:u,splitKey:d="+"}=a;getKeys$1(s).forEach(v=>{const A=v.split(d),b=A.length,g=A[b-1],x=g==="*"?"*":code(g);if(!_handlers[x])return;c||(c=getScope());const y=b>1?getMods(_modifier,A):[],f=[];_handlers[x]=_handlers[x].filter(m=>{const S=(u?m.method===u:!0)&&m.scope===c&&compareArray(m.mods,y);return S&&f.push(m.element),!S}),f.forEach(m=>removeKeyEvent(m))})};function eventHandler(a,s,c,u){if(s.element!==u)return;let d;if(s.scope===c||s.scope==="all"){d=s.mods.length>0;for(const p in _mods)Object.prototype.hasOwnProperty.call(_mods,p)&&(!_mods[p]&&s.mods.indexOf(+p)>-1||_mods[p]&&s.mods.indexOf(+p)===-1)&&(d=!1);(s.mods.length===0&&!_mods[16]&&!_mods[18]&&!_mods[17]&&!_mods[91]||d||s.shortcut==="*")&&(s.keys=[],s.keys=s.keys.concat(_downKeys),s.method(a,s)===!1&&(a.preventDefault?a.preventDefault():a.returnValue=!1,a.stopPropagation&&a.stopPropagation(),a.cancelBubble&&(a.cancelBubble=!0)))}}function dispatch(a,s){const c=_handlers["*"];let u=a.keyCode||a.which||a.charCode;if(!hotkeys$1.filter.call(this,a))return;if((u===93||u===224)&&(u=91),_downKeys.indexOf(u)===-1&&u!==229&&_downKeys.push(u),["metaKey","ctrlKey","altKey","shiftKey"].forEach(A=>{const b=modifierMap[A];a[A]&&_downKeys.indexOf(b)===-1?_downKeys.push(b):!a[A]&&_downKeys.indexOf(b)>-1?_downKeys.splice(_downKeys.indexOf(b),1):A==="metaKey"&&a[A]&&(_downKeys=_downKeys.filter(g=>g in modifierMap||g===u))}),u in _mods){_mods[u]=!0;for(const A in _modifier)_modifier[A]===u&&(hotkeys$1[A]=!0);if(!c)return}for(const A in _mods)Object.prototype.hasOwnProperty.call(_mods,A)&&(_mods[A]=a[modifierMap[A]]);a.getModifierState&&!(a.altKey&&!a.ctrlKey)&&a.getModifierState("AltGraph")&&(_downKeys.indexOf(17)===-1&&_downKeys.push(17),_downKeys.indexOf(18)===-1&&_downKeys.push(18),_mods[17]=!0,_mods[18]=!0);const d=getScope();if(c)for(let A=0;A<c.length;A++)c[A].scope===d&&(a.type==="keydown"&&c[A].keydown||a.type==="keyup"&&c[A].keyup)&&eventHandler(a,c[A],d,s);if(!(u in _handlers))return;const p=_handlers[u],v=p.length;for(let A=0;A<v;A++)if((a.type==="keydown"&&p[A].keydown||a.type==="keyup"&&p[A].keyup)&&p[A].key){const b=p[A],{splitKey:g}=b,x=b.key.split(g),y=[];for(let f=0;f<x.length;f++)y.push(code(x[f]));y.sort().join("")===_downKeys.sort().join("")&&eventHandler(a,b,d,s)}}function hotkeys$1(a,s,c){_downKeys=[];const u=getKeys$1(a);let d=[],p="all",v=document,A=0,b=!1,g=!0,x="+",y=!1,f=!1;for(c===void 0&&typeof s=="function"&&(c=s),Object.prototype.toString.call(s)==="[object Object]"&&(s.scope&&(p=s.scope),s.element&&(v=s.element),s.keyup&&(b=s.keyup),s.keydown!==void 0&&(g=s.keydown),s.capture!==void 0&&(y=s.capture),typeof s.splitKey=="string"&&(x=s.splitKey),s.single===!0&&(f=!0)),typeof s=="string"&&(p=s),f&&unbind(a,p);A<u.length;A++)a=u[A].split(x),d=[],a.length>1&&(d=getMods(_modifier,a)),a=a[a.length-1],a=a==="*"?"*":code(a),a in _handlers||(_handlers[a]=[]),_handlers[a].push({keyup:b,keydown:g,scope:p,mods:d,shortcut:u[A],method:c,key:u[A],splitKey:x,element:v});if(typeof v<"u"&&window){if(!elementEventMap.has(v)){const m=function(){let S=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.event;return dispatch(S,v)},C=function(){let S=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.event;dispatch(S,v),clearModifier(S)};elementEventMap.set(v,{keydownListener:m,keyupListenr:C,capture:y}),addEvent$1(v,"keydown",m,y),addEvent$1(v,"keyup",C,y)}if(!winListendFocus){const m=()=>{_downKeys=[]};winListendFocus={listener:m,capture:y},addEvent$1(window,"focus",m,y)}}}function trigger(a){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(_handlers).forEach(c=>{_handlers[c].filter(d=>d.scope===s&&d.shortcut===a).forEach(d=>{d&&d.method&&d.method()})})}function removeKeyEvent(a){const s=Object.values(_handlers).flat();if(s.findIndex(u=>{let{element:d}=u;return d===a})<0){const{keydownListener:u,keyupListenr:d,capture:p}=elementEventMap.get(a)||{};u&&d&&(removeEvent$1(a,"keyup",d,p),removeEvent$1(a,"keydown",u,p),elementEventMap.delete(a))}if((s.length<=0||elementEventMap.size<=0)&&(Object.keys(elementEventMap).forEach(d=>{const{keydownListener:p,keyupListenr:v,capture:A}=elementEventMap.get(d)||{};p&&v&&(removeEvent$1(d,"keyup",v,A),removeEvent$1(d,"keydown",p,A),elementEventMap.delete(d))}),elementEventMap.clear(),Object.keys(_handlers).forEach(d=>delete _handlers[d]),winListendFocus)){const{listener:d,capture:p}=winListendFocus;removeEvent$1(window,"focus",d,p),winListendFocus=null}}const _api={getPressedKeyString,setScope,getScope,deleteScope,getPressedKeyCodes,getAllKeyCodes,isPressed,filter:filter$1,trigger,unbind,keyMap:_keyMap,modifier:_modifier,modifierMap};for(const a in _api)Object.prototype.hasOwnProperty.call(_api,a)&&(hotkeys$1[a]=_api[a]);if(typeof window<"u"){const a=window.hotkeys;hotkeys$1.noConflict=s=>(s&&window.hotkeys===hotkeys$1&&(window.hotkeys=a),hotkeys$1),window.hotkeys=hotkeys$1}var reactExports=requireReact();const React=getDefaultExportFromCjs(reactExports),React$1=_mergeNamespaces({__proto__:null,default:React},[reactExports]);function commonjsRequire(a){throw new Error('Could not dynamically require "'+a+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var pdf={exports:{}};const __viteBrowserExternal={},__viteBrowserExternal$1=Object.freeze(Object.defineProperty({__proto__:null,default:__viteBrowserExternal},Symbol.toStringTag,{value:"Module"})),require$$5=getAugmentedNamespace(__viteBrowserExternal$1);var hasRequiredPdf;function requirePdf(){return hasRequiredPdf||(hasRequiredPdf=1,function(module,exports){(function(s,c){module.exports=s.pdfjsLib=c()})(globalThis,()=>(()=>{var __webpack_modules__=[,(a,s)=>{var Le;Object.defineProperty(s,"__esModule",{value:!0}),s.VerbosityLevel=s.Util=s.UnknownErrorException=s.UnexpectedResponseException=s.TextRenderingMode=s.RenderingIntentFlag=s.PromiseCapability=s.PermissionFlag=s.PasswordResponses=s.PasswordException=s.PageActionEventType=s.OPS=s.MissingPDFException=s.MAX_IMAGE_SIZE_TO_CACHE=s.LINE_FACTOR=s.LINE_DESCENT_FACTOR=s.InvalidPDFException=s.ImageKind=s.IDENTITY_MATRIX=s.FormatError=s.FeatureTest=s.FONT_IDENTITY_MATRIX=s.DocumentActionEventType=s.CMapCompressionType=s.BaseException=s.BASELINE_FACTOR=s.AnnotationType=s.AnnotationReplyType=s.AnnotationPrefix=s.AnnotationMode=s.AnnotationFlag=s.AnnotationFieldFlag=s.AnnotationEditorType=s.AnnotationEditorPrefix=s.AnnotationEditorParamsType=s.AnnotationBorderStyleType=s.AnnotationActionEventType=s.AbortException=void 0,s.assert=D,s.bytesToString=ie,s.createValidAbsoluteUrl=Z,s.getModificationDate=Ae,s.getUuid=Pe,s.getVerbosityLevel=L,s.info=F,s.isArrayBuffer=Se,s.isArrayEqual=Ee,s.isNodeJS=void 0,s.normalizeUnicode=ye,s.objectFromMap=ve,s.objectSize=we,s.setVerbosityLevel=q,s.shadow=Q,s.string32=me,s.stringToBytes=ce,s.stringToPDFString=xe,s.stringToUTF8String=Ce,s.unreachable=N,s.utf8StringToString=$e,s.warn=U;const c=typeof process=="object"&&process+""=="[object process]"&&!process.versions.nw&&!(process.versions.electron&&process.type&&process.type!=="browser");s.isNodeJS=c;const u=[1,0,0,1,0,0];s.IDENTITY_MATRIX=u;const d=[.001,0,0,.001,0,0];s.FONT_IDENTITY_MATRIX=d;const p=1e7;s.MAX_IMAGE_SIZE_TO_CACHE=p;const v=1.35;s.LINE_FACTOR=v;const A=.35;s.LINE_DESCENT_FACTOR=A;const b=A/v;s.BASELINE_FACTOR=b;const g={ANY:1,DISPLAY:2,PRINT:4,SAVE:8,ANNOTATIONS_FORMS:16,ANNOTATIONS_STORAGE:32,ANNOTATIONS_DISABLE:64,OPLIST:256};s.RenderingIntentFlag=g;const x={DISABLE:0,ENABLE:1,ENABLE_FORMS:2,ENABLE_STORAGE:3};s.AnnotationMode=x;const y="pdfjs_internal_editor_";s.AnnotationEditorPrefix=y;const f={DISABLE:-1,NONE:0,FREETEXT:3,STAMP:13,INK:15};s.AnnotationEditorType=f;const m={RESIZE:1,CREATE:2,FREETEXT_SIZE:11,FREETEXT_COLOR:12,FREETEXT_OPACITY:13,INK_COLOR:21,INK_THICKNESS:22,INK_OPACITY:23};s.AnnotationEditorParamsType=m;const C={PRINT:4,MODIFY_CONTENTS:8,COPY:16,MODIFY_ANNOTATIONS:32,FILL_INTERACTIVE_FORMS:256,COPY_FOR_ACCESSIBILITY:512,ASSEMBLE:1024,PRINT_HIGH_QUALITY:2048};s.PermissionFlag=C;const S={FILL:0,STROKE:1,FILL_STROKE:2,INVISIBLE:3,FILL_ADD_TO_PATH:4,STROKE_ADD_TO_PATH:5,FILL_STROKE_ADD_TO_PATH:6,ADD_TO_PATH:7,FILL_STROKE_MASK:3,ADD_TO_PATH_FLAG:4};s.TextRenderingMode=S;const w={GRAYSCALE_1BPP:1,RGB_24BPP:2,RGBA_32BPP:3};s.ImageKind=w;const _={TEXT:1,LINK:2,FREETEXT:3,LINE:4,SQUARE:5,CIRCLE:6,POLYGON:7,POLYLINE:8,HIGHLIGHT:9,UNDERLINE:10,SQUIGGLY:11,STRIKEOUT:12,STAMP:13,CARET:14,INK:15,POPUP:16,FILEATTACHMENT:17,SOUND:18,MOVIE:19,WIDGET:20,SCREEN:21,PRINTERMARK:22,TRAPNET:23,WATERMARK:24,THREED:25,REDACT:26};s.AnnotationType=_;const I={GROUP:"Group",REPLY:"R"};s.AnnotationReplyType=I;const $={INVISIBLE:1,HIDDEN:2,PRINT:4,NOZOOM:8,NOROTATE:16,NOVIEW:32,READONLY:64,LOCKED:128,TOGGLENOVIEW:256,LOCKEDCONTENTS:512};s.AnnotationFlag=$;const P={READONLY:1,REQUIRED:2,NOEXPORT:4,MULTILINE:4096,PASSWORD:8192,NOTOGGLETOOFF:16384,RADIO:32768,PUSHBUTTON:65536,COMBO:131072,EDIT:262144,SORT:524288,FILESELECT:1048576,MULTISELECT:2097152,DONOTSPELLCHECK:4194304,DONOTSCROLL:8388608,COMB:16777216,RICHTEXT:33554432,RADIOSINUNISON:33554432,COMMITONSELCHANGE:67108864};s.AnnotationFieldFlag=P;const E={SOLID:1,DASHED:2,BEVELED:3,INSET:4,UNDERLINE:5};s.AnnotationBorderStyleType=E;const R={E:"Mouse Enter",X:"Mouse Exit",D:"Mouse Down",U:"Mouse Up",Fo:"Focus",Bl:"Blur",PO:"PageOpen",PC:"PageClose",PV:"PageVisible",PI:"PageInvisible",K:"Keystroke",F:"Format",V:"Validate",C:"Calculate"};s.AnnotationActionEventType=R;const T={WC:"WillClose",WS:"WillSave",DS:"DidSave",WP:"WillPrint",DP:"DidPrint"};s.DocumentActionEventType=T;const B={O:"PageOpen",C:"PageClose"};s.PageActionEventType=B;const M={ERRORS:0,WARNINGS:1,INFOS:5};s.VerbosityLevel=M;const k={NONE:0,BINARY:1};s.CMapCompressionType=k;const O={dependency:1,setLineWidth:2,setLineCap:3,setLineJoin:4,setMiterLimit:5,setDash:6,setRenderingIntent:7,setFlatness:8,setGState:9,save:10,restore:11,transform:12,moveTo:13,lineTo:14,curveTo:15,curveTo2:16,curveTo3:17,closePath:18,rectangle:19,stroke:20,closeStroke:21,fill:22,eoFill:23,fillStroke:24,eoFillStroke:25,closeFillStroke:26,closeEOFillStroke:27,endPath:28,clip:29,eoClip:30,beginText:31,endText:32,setCharSpacing:33,setWordSpacing:34,setHScale:35,setLeading:36,setFont:37,setTextRenderingMode:38,setTextRise:39,moveText:40,setLeadingMoveText:41,setTextMatrix:42,nextLine:43,showText:44,showSpacedText:45,nextLineShowText:46,nextLineSetSpacingShowText:47,setCharWidth:48,setCharWidthAndBounds:49,setStrokeColorSpace:50,setFillColorSpace:51,setStrokeColor:52,setStrokeColorN:53,setFillColor:54,setFillColorN:55,setStrokeGray:56,setFillGray:57,setStrokeRGBColor:58,setFillRGBColor:59,setStrokeCMYKColor:60,setFillCMYKColor:61,shadingFill:62,beginInlineImage:63,beginImageData:64,endInlineImage:65,paintXObject:66,markPoint:67,markPointProps:68,beginMarkedContent:69,beginMarkedContentProps:70,endMarkedContent:71,beginCompat:72,endCompat:73,paintFormXObjectBegin:74,paintFormXObjectEnd:75,beginGroup:76,endGroup:77,beginAnnotation:80,endAnnotation:81,paintImageMaskXObject:83,paintImageMaskXObjectGroup:84,paintImageXObject:85,paintInlineImageXObject:86,paintInlineImageXObjectGroup:87,paintImageXObjectRepeat:88,paintImageMaskXObjectRepeat:89,paintSolidColorImageMask:90,constructPath:91};s.OPS=O;const H={NEED_PASSWORD:1,INCORRECT_PASSWORD:2};s.PasswordResponses=H;let j=M.WARNINGS;function q(Oe){Number.isInteger(Oe)&&(j=Oe)}function L(){return j}function F(Oe){j>=M.INFOS&&console.log(`Info: ${Oe}`)}function U(Oe){j>=M.WARNINGS&&console.log(`Warning: ${Oe}`)}function N(Oe){throw new Error(Oe)}function D(Oe,Fe){Oe||N(Fe)}function W(Oe){switch(Oe==null?void 0:Oe.protocol){case"http:":case"https:":case"ftp:":case"mailto:":case"tel:":return!0;default:return!1}}function Z(Oe,Fe=null,_e=null){if(!Oe)return null;try{if(_e&&typeof Oe=="string"){if(_e.addDefaultProtocol&&Oe.startsWith("www.")){const Ye=Oe.match(/\./g);(Ye==null?void 0:Ye.length)>=2&&(Oe=`http://${Oe}`)}if(_e.tryConvertEncoding)try{Oe=Ce(Oe)}catch{}}const je=Fe?new URL(Oe,Fe):new URL(Oe);if(W(je))return je}catch{}return null}function Q(Oe,Fe,_e,je=!1){return Object.defineProperty(Oe,Fe,{value:_e,enumerable:!je,configurable:!0,writable:!1}),_e}const Y=function(){function Fe(_e,je){this.constructor===Fe&&N("Cannot initialize BaseException."),this.message=_e,this.name=je}return Fe.prototype=new Error,Fe.constructor=Fe,Fe}();s.BaseException=Y;class J extends Y{constructor(Fe,_e){super(Fe,"PasswordException"),this.code=_e}}s.PasswordException=J;class ee extends Y{constructor(Fe,_e){super(Fe,"UnknownErrorException"),this.details=_e}}s.UnknownErrorException=ee;class re extends Y{constructor(Fe){super(Fe,"InvalidPDFException")}}s.InvalidPDFException=re;class ae extends Y{constructor(Fe){super(Fe,"MissingPDFException")}}s.MissingPDFException=ae;class V extends Y{constructor(Fe,_e){super(Fe,"UnexpectedResponseException"),this.status=_e}}s.UnexpectedResponseException=V;class K extends Y{constructor(Fe){super(Fe,"FormatError")}}s.FormatError=K;class te extends Y{constructor(Fe){super(Fe,"AbortException")}}s.AbortException=te;function ie(Oe){(typeof Oe!="object"||(Oe==null?void 0:Oe.length)===void 0)&&N("Invalid argument for bytesToString");const Fe=Oe.length,_e=8192;if(Fe<_e)return String.fromCharCode.apply(null,Oe);const je=[];for(let Ye=0;Ye<Fe;Ye+=_e){const Te=Math.min(Ye+_e,Fe),ke=Oe.subarray(Ye,Te);je.push(String.fromCharCode.apply(null,ke))}return je.join("")}function ce(Oe){typeof Oe!="string"&&N("Invalid argument for stringToBytes");const Fe=Oe.length,_e=new Uint8Array(Fe);for(let je=0;je<Fe;++je)_e[je]=Oe.charCodeAt(je)&255;return _e}function me(Oe){return String.fromCharCode(Oe>>24&255,Oe>>16&255,Oe>>8&255,Oe&255)}function we(Oe){return Object.keys(Oe).length}function ve(Oe){const Fe=Object.create(null);for(const[_e,je]of Oe)Fe[_e]=je;return Fe}function ge(){const Oe=new Uint8Array(4);return Oe[0]=1,new Uint32Array(Oe.buffer,0,1)[0]===1}function ue(){try{return new Function(""),!0}catch{return!1}}class se{static get isLittleEndian(){return Q(this,"isLittleEndian",ge())}static get isEvalSupported(){return Q(this,"isEvalSupported",ue())}static get isOffscreenCanvasSupported(){return Q(this,"isOffscreenCanvasSupported",typeof OffscreenCanvas<"u")}static get platform(){return typeof navigator>"u"?Q(this,"platform",{isWin:!1,isMac:!1}):Q(this,"platform",{isWin:navigator.platform.includes("Win"),isMac:navigator.platform.includes("Mac")})}static get isCSSRoundSupported(){var Fe,_e;return Q(this,"isCSSRoundSupported",(_e=(Fe=globalThis.CSS)==null?void 0:Fe.supports)==null?void 0:_e.call(Fe,"width: round(1.5px, 1px)"))}}s.FeatureTest=se;const oe=[...Array(256).keys()].map(Oe=>Oe.toString(16).padStart(2,"0"));class de{static makeHexColor(Fe,_e,je){return`#${oe[Fe]}${oe[_e]}${oe[je]}`}static scaleMinMax(Fe,_e){let je;Fe[0]?(Fe[0]<0&&(je=_e[0],_e[0]=_e[1],_e[1]=je),_e[0]*=Fe[0],_e[1]*=Fe[0],Fe[3]<0&&(je=_e[2],_e[2]=_e[3],_e[3]=je),_e[2]*=Fe[3],_e[3]*=Fe[3]):(je=_e[0],_e[0]=_e[2],_e[2]=je,je=_e[1],_e[1]=_e[3],_e[3]=je,Fe[1]<0&&(je=_e[2],_e[2]=_e[3],_e[3]=je),_e[2]*=Fe[1],_e[3]*=Fe[1],Fe[2]<0&&(je=_e[0],_e[0]=_e[1],_e[1]=je),_e[0]*=Fe[2],_e[1]*=Fe[2]),_e[0]+=Fe[4],_e[1]+=Fe[4],_e[2]+=Fe[5],_e[3]+=Fe[5]}static transform(Fe,_e){return[Fe[0]*_e[0]+Fe[2]*_e[1],Fe[1]*_e[0]+Fe[3]*_e[1],Fe[0]*_e[2]+Fe[2]*_e[3],Fe[1]*_e[2]+Fe[3]*_e[3],Fe[0]*_e[4]+Fe[2]*_e[5]+Fe[4],Fe[1]*_e[4]+Fe[3]*_e[5]+Fe[5]]}static applyTransform(Fe,_e){const je=Fe[0]*_e[0]+Fe[1]*_e[2]+_e[4],Ye=Fe[0]*_e[1]+Fe[1]*_e[3]+_e[5];return[je,Ye]}static applyInverseTransform(Fe,_e){const je=_e[0]*_e[3]-_e[1]*_e[2],Ye=(Fe[0]*_e[3]-Fe[1]*_e[2]+_e[2]*_e[5]-_e[4]*_e[3])/je,Te=(-Fe[0]*_e[1]+Fe[1]*_e[0]+_e[4]*_e[1]-_e[5]*_e[0])/je;return[Ye,Te]}static getAxialAlignedBoundingBox(Fe,_e){const je=this.applyTransform(Fe,_e),Ye=this.applyTransform(Fe.slice(2,4),_e),Te=this.applyTransform([Fe[0],Fe[3]],_e),ke=this.applyTransform([Fe[2],Fe[1]],_e);return[Math.min(je[0],Ye[0],Te[0],ke[0]),Math.min(je[1],Ye[1],Te[1],ke[1]),Math.max(je[0],Ye[0],Te[0],ke[0]),Math.max(je[1],Ye[1],Te[1],ke[1])]}static inverseTransform(Fe){const _e=Fe[0]*Fe[3]-Fe[1]*Fe[2];return[Fe[3]/_e,-Fe[1]/_e,-Fe[2]/_e,Fe[0]/_e,(Fe[2]*Fe[5]-Fe[4]*Fe[3])/_e,(Fe[4]*Fe[1]-Fe[5]*Fe[0])/_e]}static singularValueDecompose2dScale(Fe){const _e=[Fe[0],Fe[2],Fe[1],Fe[3]],je=Fe[0]*_e[0]+Fe[1]*_e[2],Ye=Fe[0]*_e[1]+Fe[1]*_e[3],Te=Fe[2]*_e[0]+Fe[3]*_e[2],ke=Fe[2]*_e[1]+Fe[3]*_e[3],De=(je+ke)/2,Re=Math.sqrt((je+ke)**2-4*(je*ke-Te*Ye))/2,Ge=De+Re||1,Ve=De-Re||1;return[Math.sqrt(Ge),Math.sqrt(Ve)]}static normalizeRect(Fe){const _e=Fe.slice(0);return Fe[0]>Fe[2]&&(_e[0]=Fe[2],_e[2]=Fe[0]),Fe[1]>Fe[3]&&(_e[1]=Fe[3],_e[3]=Fe[1]),_e}static intersect(Fe,_e){const je=Math.max(Math.min(Fe[0],Fe[2]),Math.min(_e[0],_e[2])),Ye=Math.min(Math.max(Fe[0],Fe[2]),Math.max(_e[0],_e[2]));if(je>Ye)return null;const Te=Math.max(Math.min(Fe[1],Fe[3]),Math.min(_e[1],_e[3])),ke=Math.min(Math.max(Fe[1],Fe[3]),Math.max(_e[1],_e[3]));return Te>ke?null:[je,Te,Ye,ke]}static bezierBoundingBox(Fe,_e,je,Ye,Te,ke,De,Re){const Ge=[],Ve=[[],[]];let Xe,We,ze,Qe,et,Ze,qe,Je;for(let vt=0;vt<2;++vt){if(vt===0?(We=6*Fe-12*je+6*Te,Xe=-3*Fe+9*je-9*Te+3*De,ze=3*je-3*Fe):(We=6*_e-12*Ye+6*ke,Xe=-3*_e+9*Ye-9*ke+3*Re,ze=3*Ye-3*_e),Math.abs(Xe)<1e-12){if(Math.abs(We)<1e-12)continue;Qe=-ze/We,0<Qe&&Qe<1&&Ge.push(Qe);continue}qe=We*We-4*ze*Xe,Je=Math.sqrt(qe),!(qe<0)&&(et=(-We+Je)/(2*Xe),0<et&&et<1&&Ge.push(et),Ze=(-We-Je)/(2*Xe),0<Ze&&Ze<1&&Ge.push(Ze))}let ot=Ge.length,nt;const st=ot;for(;ot--;)Qe=Ge[ot],nt=1-Qe,Ve[0][ot]=nt*nt*nt*Fe+3*nt*nt*Qe*je+3*nt*Qe*Qe*Te+Qe*Qe*Qe*De,Ve[1][ot]=nt*nt*nt*_e+3*nt*nt*Qe*Ye+3*nt*Qe*Qe*ke+Qe*Qe*Qe*Re;return Ve[0][st]=Fe,Ve[1][st]=_e,Ve[0][st+1]=De,Ve[1][st+1]=Re,Ve[0].length=Ve[1].length=st+2,[Math.min(...Ve[0]),Math.min(...Ve[1]),Math.max(...Ve[0]),Math.max(...Ve[1])]}}s.Util=de;const le=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,728,711,710,729,733,731,730,732,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,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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8226,8224,8225,8230,8212,8211,402,8260,8249,8250,8722,8240,8222,8220,8221,8216,8217,8218,8482,64257,64258,321,338,352,376,381,305,322,339,353,382,0,8364];function xe(Oe){if(Oe[0]>="ï"){let _e;if(Oe[0]==="þ"&&Oe[1]==="ÿ"?_e="utf-16be":Oe[0]==="ÿ"&&Oe[1]==="þ"?_e="utf-16le":Oe[0]==="ï"&&Oe[1]==="»"&&Oe[2]==="¿"&&(_e="utf-8"),_e)try{const je=new TextDecoder(_e,{fatal:!0}),Ye=ce(Oe);return je.decode(Ye)}catch(je){U(`stringToPDFString: "${je}".`)}}const Fe=[];for(let _e=0,je=Oe.length;_e<je;_e++){const Ye=le[Oe.charCodeAt(_e)];Fe.push(Ye?String.fromCharCode(Ye):Oe.charAt(_e))}return Fe.join("")}function Ce(Oe){return decodeURIComponent(escape(Oe))}function $e(Oe){return unescape(encodeURIComponent(Oe))}function Se(Oe){return typeof Oe=="object"&&(Oe==null?void 0:Oe.byteLength)!==void 0}function Ee(Oe,Fe){if(Oe.length!==Fe.length)return!1;for(let _e=0,je=Oe.length;_e<je;_e++)if(Oe[_e]!==Fe[_e])return!1;return!0}function Ae(Oe=new Date){return[Oe.getUTCFullYear().toString(),(Oe.getUTCMonth()+1).toString().padStart(2,"0"),Oe.getUTCDate().toString().padStart(2,"0"),Oe.getUTCHours().toString().padStart(2,"0"),Oe.getUTCMinutes().toString().padStart(2,"0"),Oe.getUTCSeconds().toString().padStart(2,"0")].join("")}class pe{constructor(){bt(this,Le,!1);this.promise=new Promise((Fe,_e)=>{this.resolve=je=>{Ct(this,Le,!0),Fe(je)},this.reject=je=>{Ct(this,Le,!0),_e(je)}})}get settled(){return He(this,Le)}}Le=new WeakMap,s.PromiseCapability=pe;let he=null,Ie=null;function ye(Oe){return he||(he=/([\u00a0\u00b5\u037e\u0eb3\u2000-\u200a\u202f\u2126\ufb00-\ufb04\ufb06\ufb20-\ufb36\ufb38-\ufb3c\ufb3e\ufb40-\ufb41\ufb43-\ufb44\ufb46-\ufba1\ufba4-\ufba9\ufbae-\ufbb1\ufbd3-\ufbdc\ufbde-\ufbe7\ufbea-\ufbf8\ufbfc-\ufbfd\ufc00-\ufc5d\ufc64-\ufcf1\ufcf5-\ufd3d\ufd88\ufdf4\ufdfa-\ufdfb\ufe71\ufe77\ufe79\ufe7b\ufe7d]+)|(\ufb05+)/gu,Ie=new Map([["ſt","ſt"]])),Oe.replaceAll(he,(Fe,_e,je)=>_e?_e.normalize("NFKC"):Ie.get(je))}function Pe(){if(typeof crypto<"u"&&typeof(crypto==null?void 0:crypto.randomUUID)=="function")return crypto.randomUUID();const Oe=new Uint8Array(32);if(typeof crypto<"u"&&typeof(crypto==null?void 0:crypto.getRandomValues)=="function")crypto.getRandomValues(Oe);else for(let Fe=0;Fe<32;Fe++)Oe[Fe]=Math.floor(Math.random()*255);return ie(Oe)}const Ne="pdfjs_internal_id_";s.AnnotationPrefix=Ne},(__unused_webpack_module,exports,__w_pdfjs_require__)=>{var a,c,u,d,ka,po,A,b,g,x,y,f,m,C,S,go,_,I,Gs,P,E;Object.defineProperty(exports,"__esModule",{value:!0}),exports.RenderTask=exports.PDFWorkerUtil=exports.PDFWorker=exports.PDFPageProxy=exports.PDFDocumentProxy=exports.PDFDocumentLoadingTask=exports.PDFDataRangeTransport=exports.LoopbackPort=exports.DefaultStandardFontDataFactory=exports.DefaultFilterFactory=exports.DefaultCanvasFactory=exports.DefaultCMapReaderFactory=void 0,Object.defineProperty(exports,"SVGGraphics",{enumerable:!0,get:function(){return _displaySvg.SVGGraphics}}),exports.build=void 0,exports.getDocument=getDocument,exports.version=void 0;var _util=__w_pdfjs_require__(1),_annotation_storage=__w_pdfjs_require__(3),_display_utils=__w_pdfjs_require__(6),_font_loader=__w_pdfjs_require__(9),_displayNode_utils=__w_pdfjs_require__(10),_canvas=__w_pdfjs_require__(11),_worker_options=__w_pdfjs_require__(14),_message_handler=__w_pdfjs_require__(15),_metadata=__w_pdfjs_require__(16),_optional_content_config=__w_pdfjs_require__(17),_transport_stream=__w_pdfjs_require__(18),_displayFetch_stream=__w_pdfjs_require__(19),_displayNetwork=__w_pdfjs_require__(22),_displayNode_stream=__w_pdfjs_require__(23),_displaySvg=__w_pdfjs_require__(24),_xfa_text=__w_pdfjs_require__(25);const DEFAULT_RANGE_CHUNK_SIZE=65536,RENDERING_CANCELLED_TIMEOUT=100,DELAYED_CLEANUP_TIMEOUT=5e3,DefaultCanvasFactory=_util.isNodeJS?_displayNode_utils.NodeCanvasFactory:_display_utils.DOMCanvasFactory;exports.DefaultCanvasFactory=DefaultCanvasFactory;const DefaultCMapReaderFactory=_util.isNodeJS?_displayNode_utils.NodeCMapReaderFactory:_display_utils.DOMCMapReaderFactory;exports.DefaultCMapReaderFactory=DefaultCMapReaderFactory;const DefaultFilterFactory=_util.isNodeJS?_displayNode_utils.NodeFilterFactory:_display_utils.DOMFilterFactory;exports.DefaultFilterFactory=DefaultFilterFactory;const DefaultStandardFontDataFactory=_util.isNodeJS?_displayNode_utils.NodeStandardFontDataFactory:_display_utils.DOMStandardFontDataFactory;exports.DefaultStandardFontDataFactory=DefaultStandardFontDataFactory;function getDocument(T){if(typeof T=="string"||T instanceof URL?T={url:T}:(0,_util.isArrayBuffer)(T)&&(T={data:T}),typeof T!="object")throw new Error("Invalid parameter in getDocument, need parameter object.");if(!T.url&&!T.data&&!T.range)throw new Error("Invalid parameter object: need either .data, .range or .url");const B=new PDFDocumentLoadingTask,{docId:M}=B,k=T.url?getUrlProp(T.url):null,O=T.data?getDataProp(T.data):null,H=T.httpHeaders||null,j=T.withCredentials===!0,q=T.password??null,L=T.range instanceof PDFDataRangeTransport?T.range:null,F=Number.isInteger(T.rangeChunkSize)&&T.rangeChunkSize>0?T.rangeChunkSize:DEFAULT_RANGE_CHUNK_SIZE;let U=T.worker instanceof PDFWorker?T.worker:null;const N=T.verbosity,D=typeof T.docBaseUrl=="string"&&!(0,_display_utils.isDataScheme)(T.docBaseUrl)?T.docBaseUrl:null,W=typeof T.cMapUrl=="string"?T.cMapUrl:null,Z=T.cMapPacked!==!1,Q=T.CMapReaderFactory||DefaultCMapReaderFactory,Y=typeof T.standardFontDataUrl=="string"?T.standardFontDataUrl:null,J=T.StandardFontDataFactory||DefaultStandardFontDataFactory,ee=T.stopAtErrors!==!0,re=Number.isInteger(T.maxImageSize)&&T.maxImageSize>-1?T.maxImageSize:-1,ae=T.isEvalSupported!==!1,V=typeof T.isOffscreenCanvasSupported=="boolean"?T.isOffscreenCanvasSupported:!_util.isNodeJS,K=Number.isInteger(T.canvasMaxAreaInBytes)?T.canvasMaxAreaInBytes:-1,te=typeof T.disableFontFace=="boolean"?T.disableFontFace:_util.isNodeJS,ie=T.fontExtraProperties===!0,ce=T.enableXfa===!0,me=T.ownerDocument||globalThis.document,we=T.disableRange===!0,ve=T.disableStream===!0,ge=T.disableAutoFetch===!0,ue=T.pdfBug===!0,se=L?L.length:T.length??NaN,oe=typeof T.useSystemFonts=="boolean"?T.useSystemFonts:!_util.isNodeJS&&!te,de=typeof T.useWorkerFetch=="boolean"?T.useWorkerFetch:Q===_display_utils.DOMCMapReaderFactory&&J===_display_utils.DOMStandardFontDataFactory&&W&&Y&&(0,_display_utils.isValidFetchUrl)(W,document.baseURI)&&(0,_display_utils.isValidFetchUrl)(Y,document.baseURI),le=T.canvasFactory||new DefaultCanvasFactory({ownerDocument:me}),xe=T.filterFactory||new DefaultFilterFactory({docId:M,ownerDocument:me}),Ce=null;(0,_util.setVerbosityLevel)(N);const $e={canvasFactory:le,filterFactory:xe};if(de||($e.cMapReaderFactory=new Q({baseUrl:W,isCompressed:Z}),$e.standardFontDataFactory=new J({baseUrl:Y})),!U){const Ae={verbosity:N,port:_worker_options.GlobalWorkerOptions.workerPort};U=Ae.port?PDFWorker.fromPort(Ae):new PDFWorker(Ae),B._worker=U}const Se={docId:M,apiVersion:"3.11.174",data:O,password:q,disableAutoFetch:ge,rangeChunkSize:F,length:se,docBaseUrl:D,enableXfa:ce,evaluatorOptions:{maxImageSize:re,disableFontFace:te,ignoreErrors:ee,isEvalSupported:ae,isOffscreenCanvasSupported:V,canvasMaxAreaInBytes:K,fontExtraProperties:ie,useSystemFonts:oe,cMapUrl:de?W:null,standardFontDataUrl:de?Y:null}},Ee={ignoreErrors:ee,isEvalSupported:ae,disableFontFace:te,fontExtraProperties:ie,enableXfa:ce,ownerDocument:me,disableAutoFetch:ge,pdfBug:ue,styleElement:Ce};return U.promise.then(function(){if(B.destroyed)throw new Error("Loading aborted");const Ae=_fetchDocument(U,Se),pe=new Promise(function(he){let Ie;L?Ie=new _transport_stream.PDFDataTransportStream({length:se,initialData:L.initialData,progressiveDone:L.progressiveDone,contentDispositionFilename:L.contentDispositionFilename,disableRange:we,disableStream:ve},L):O||(Ie=(Pe=>_util.isNodeJS?new _displayNode_stream.PDFNodeStream(Pe):(0,_display_utils.isValidFetchUrl)(Pe.url)?new _displayFetch_stream.PDFFetchStream(Pe):new _displayNetwork.PDFNetworkStream(Pe))({url:k,length:se,httpHeaders:H,withCredentials:j,rangeChunkSize:F,disableRange:we,disableStream:ve})),he(Ie)});return Promise.all([Ae,pe]).then(function([he,Ie]){if(B.destroyed)throw new Error("Loading aborted");const ye=new _message_handler.MessageHandler(M,he,U.port),Pe=new WorkerTransport(ye,B,Ie,Ee,$e);B._transport=Pe,ye.send("Ready",null)})}).catch(B._capability.reject),B}async function _fetchDocument(T,B){if(T.destroyed)throw new Error("Worker was destroyed");const M=await T.messageHandler.sendWithPromise("GetDocRequest",B,B.data?[B.data.buffer]:null);if(T.destroyed)throw new Error("Worker was destroyed");return M}function getUrlProp(T){if(T instanceof URL)return T.href;try{return new URL(T,window.location).href}catch{if(_util.isNodeJS&&typeof T=="string")return T}throw new Error("Invalid PDF url data: either string or URL-object is expected in the url property.")}function getDataProp(T){if(_util.isNodeJS&&typeof Buffer<"u"&&T instanceof Buffer)throw new Error("Please provide binary data as `Uint8Array`, rather than `Buffer`.");if(T instanceof Uint8Array&&T.byteLength===T.buffer.byteLength)return T;if(typeof T=="string")return(0,_util.stringToBytes)(T);if(typeof T=="object"&&!isNaN(T==null?void 0:T.length)||(0,_util.isArrayBuffer)(T))return new Uint8Array(T);throw new Error("Invalid PDF binary data: either TypedArray, string, or array-like object is expected in the data property.")}const s=class s{constructor(){this._capability=new _util.PromiseCapability,this._transport=null,this._worker=null,this.docId=`d${hi(s,a)._++}`,this.destroyed=!1,this.onPassword=null,this.onProgress=null}get promise(){return this._capability.promise}async destroy(){var B,M,k;this.destroyed=!0;try{(B=this._worker)!=null&&B.port&&(this._worker._pendingDestroy=!0),await((M=this._transport)==null?void 0:M.destroy())}catch(O){throw(k=this._worker)!=null&&k.port&&delete this._worker._pendingDestroy,O}this._transport=null,this._worker&&(this._worker.destroy(),this._worker=null)}};a=new WeakMap,bt(s,a,0);let PDFDocumentLoadingTask=s;exports.PDFDocumentLoadingTask=PDFDocumentLoadingTask;class PDFDataRangeTransport{constructor(B,M,k=!1,O=null){this.length=B,this.initialData=M,this.progressiveDone=k,this.contentDispositionFilename=O,this._rangeListeners=[],this._progressListeners=[],this._progressiveReadListeners=[],this._progressiveDoneListeners=[],this._readyCapability=new _util.PromiseCapability}addRangeListener(B){this._rangeListeners.push(B)}addProgressListener(B){this._progressListeners.push(B)}addProgressiveReadListener(B){this._progressiveReadListeners.push(B)}addProgressiveDoneListener(B){this._progressiveDoneListeners.push(B)}onDataRange(B,M){for(const k of this._rangeListeners)k(B,M)}onDataProgress(B,M){this._readyCapability.promise.then(()=>{for(const k of this._progressListeners)k(B,M)})}onDataProgressiveRead(B){this._readyCapability.promise.then(()=>{for(const M of this._progressiveReadListeners)M(B)})}onDataProgressiveDone(){this._readyCapability.promise.then(()=>{for(const B of this._progressiveDoneListeners)B()})}transportReady(){this._readyCapability.resolve()}requestDataRange(B,M){(0,_util.unreachable)("Abstract method PDFDataRangeTransport.requestDataRange")}abort(){}}exports.PDFDataRangeTransport=PDFDataRangeTransport;class PDFDocumentProxy{constructor(B,M){this._pdfInfo=B,this._transport=M,Object.defineProperty(this,"getJavaScript",{value:()=>((0,_display_utils.deprecated)("`PDFDocumentProxy.getJavaScript`, please use `PDFDocumentProxy.getJSActions` instead."),this.getJSActions().then(k=>{if(!k)return k;const O=[];for(const H in k)O.push(...k[H]);return O}))})}get annotationStorage(){return this._transport.annotationStorage}get filterFactory(){return this._transport.filterFactory}get numPages(){return this._pdfInfo.numPages}get fingerprints(){return this._pdfInfo.fingerprints}get isPureXfa(){return(0,_util.shadow)(this,"isPureXfa",!!this._transport._htmlForXfa)}get allXfaHtml(){return this._transport._htmlForXfa}getPage(B){return this._transport.getPage(B)}getPageIndex(B){return this._transport.getPageIndex(B)}getDestinations(){return this._transport.getDestinations()}getDestination(B){return this._transport.getDestination(B)}getPageLabels(){return this._transport.getPageLabels()}getPageLayout(){return this._transport.getPageLayout()}getPageMode(){return this._transport.getPageMode()}getViewerPreferences(){return this._transport.getViewerPreferences()}getOpenAction(){return this._transport.getOpenAction()}getAttachments(){return this._transport.getAttachments()}getJSActions(){return this._transport.getDocJSActions()}getOutline(){return this._transport.getOutline()}getOptionalContentConfig(){return this._transport.getOptionalContentConfig()}getPermissions(){return this._transport.getPermissions()}getMetadata(){return this._transport.getMetadata()}getMarkInfo(){return this._transport.getMarkInfo()}getData(){return this._transport.getData()}saveDocument(){return this._transport.saveDocument()}getDownloadInfo(){return this._transport.downloadInfoCapability.promise}cleanup(B=!1){return this._transport.startCleanup(B||this.isPureXfa)}destroy(){return this.loadingTask.destroy()}get loadingParams(){return this._transport.loadingParams}get loadingTask(){return this._transport.loadingTask}getFieldObjects(){return this._transport.getFieldObjects()}hasJSActions(){return this._transport.hasJSActions()}getCalculationOrderIds(){return this._transport.getCalculationOrderIds()}}exports.PDFDocumentProxy=PDFDocumentProxy;class PDFPageProxy{constructor(B,M,k,O=!1){bt(this,d);bt(this,c,null);bt(this,u,!1);this._pageIndex=B,this._pageInfo=M,this._transport=k,this._stats=O?new _display_utils.StatTimer:null,this._pdfBug=O,this.commonObjs=k.commonObjs,this.objs=new PDFObjects,this._maybeCleanupAfterRender=!1,this._intentStates=new Map,this.destroyed=!1}get pageNumber(){return this._pageIndex+1}get rotate(){return this._pageInfo.rotate}get ref(){return this._pageInfo.ref}get userUnit(){return this._pageInfo.userUnit}get view(){return this._pageInfo.view}getViewport({scale:B,rotation:M=this.rotate,offsetX:k=0,offsetY:O=0,dontFlip:H=!1}={}){return new _display_utils.PageViewport({viewBox:this.view,scale:B,rotation:M,offsetX:k,offsetY:O,dontFlip:H})}getAnnotations({intent:B="display"}={}){const M=this._transport.getRenderingIntent(B);return this._transport.getAnnotations(this._pageIndex,M.renderingIntent)}getJSActions(){return this._transport.getPageJSActions(this._pageIndex)}get filterFactory(){return this._transport.filterFactory}get isPureXfa(){return(0,_util.shadow)(this,"isPureXfa",!!this._transport._htmlForXfa)}async getXfa(){var B;return((B=this._transport._htmlForXfa)==null?void 0:B.children[this._pageIndex])||null}render({canvasContext:B,viewport:M,intent:k="display",annotationMode:O=_util.AnnotationMode.ENABLE,transform:H=null,background:j=null,optionalContentConfigPromise:q=null,annotationCanvasMap:L=null,pageColors:F=null,printAnnotationStorage:U=null}){var J,ee;(J=this._stats)==null||J.time("Overall");const N=this._transport.getRenderingIntent(k,O,U);Ct(this,u,!1),it(this,d,po).call(this),q||(q=this._transport.getOptionalContentConfig());let D=this._intentStates.get(N.cacheKey);D||(D=Object.create(null),this._intentStates.set(N.cacheKey,D)),D.streamReaderCancelTimeout&&(clearTimeout(D.streamReaderCancelTimeout),D.streamReaderCancelTimeout=null);const W=!!(N.renderingIntent&_util.RenderingIntentFlag.PRINT);D.displayReadyCapability||(D.displayReadyCapability=new _util.PromiseCapability,D.operatorList={fnArray:[],argsArray:[],lastChunk:!1,separateAnnots:null},(ee=this._stats)==null||ee.time("Page Request"),this._pumpOperatorList(N));const Z=re=>{var ae,V;D.renderTasks.delete(Q),(this._maybeCleanupAfterRender||W)&&Ct(this,u,!0),it(this,d,ka).call(this,!W),re?(Q.capability.reject(re),this._abortOperatorList({intentState:D,reason:re instanceof Error?re:new Error(re)})):Q.capability.resolve(),(ae=this._stats)==null||ae.timeEnd("Rendering"),(V=this._stats)==null||V.timeEnd("Overall")},Q=new InternalRenderTask({callback:Z,params:{canvasContext:B,viewport:M,transform:H,background:j},objs:this.objs,commonObjs:this.commonObjs,annotationCanvasMap:L,operatorList:D.operatorList,pageIndex:this._pageIndex,canvasFactory:this._transport.canvasFactory,filterFactory:this._transport.filterFactory,useRequestAnimationFrame:!W,pdfBug:this._pdfBug,pageColors:F});(D.renderTasks||(D.renderTasks=new Set)).add(Q);const Y=Q.task;return Promise.all([D.displayReadyCapability.promise,q]).then(([re,ae])=>{var V;if(this.destroyed){Z();return}(V=this._stats)==null||V.time("Rendering"),Q.initializeGraphics({transparency:re,optionalContentConfig:ae}),Q.operatorListChanged()}).catch(Z),Y}getOperatorList({intent:B="display",annotationMode:M=_util.AnnotationMode.ENABLE,printAnnotationStorage:k=null}={}){var L;function O(){j.operatorList.lastChunk&&(j.opListReadCapability.resolve(j.operatorList),j.renderTasks.delete(q))}const H=this._transport.getRenderingIntent(B,M,k,!0);let j=this._intentStates.get(H.cacheKey);j||(j=Object.create(null),this._intentStates.set(H.cacheKey,j));let q;return j.opListReadCapability||(q=Object.create(null),q.operatorListChanged=O,j.opListReadCapability=new _util.PromiseCapability,(j.renderTasks||(j.renderTasks=new Set)).add(q),j.operatorList={fnArray:[],argsArray:[],lastChunk:!1,separateAnnots:null},(L=this._stats)==null||L.time("Page Request"),this._pumpOperatorList(H)),j.opListReadCapability.promise}streamTextContent({includeMarkedContent:B=!1,disableNormalization:M=!1}={}){return this._transport.messageHandler.sendWithStream("GetTextContent",{pageIndex:this._pageIndex,includeMarkedContent:B===!0,disableNormalization:M===!0},{highWaterMark:100,size(O){return O.items.length}})}getTextContent(B={}){if(this._transport._htmlForXfa)return this.getXfa().then(k=>_xfa_text.XfaText.textContent(k));const M=this.streamTextContent(B);return new Promise(function(k,O){function H(){j.read().then(function({value:L,done:F}){if(F){k(q);return}Object.assign(q.styles,L.styles),q.items.push(...L.items),H()},O)}const j=M.getReader(),q={items:[],styles:Object.create(null)};H()})}getStructTree(){return this._transport.getStructTree(this._pageIndex)}_destroy(){this.destroyed=!0;const B=[];for(const M of this._intentStates.values())if(this._abortOperatorList({intentState:M,reason:new Error("Page was destroyed."),force:!0}),!M.opListReadCapability)for(const k of M.renderTasks)B.push(k.completed),k.cancel();return this.objs.clear(),Ct(this,u,!1),it(this,d,po).call(this),Promise.all(B)}cleanup(B=!1){Ct(this,u,!0);const M=it(this,d,ka).call(this,!1);return B&&M&&this._stats&&(this._stats=new _display_utils.StatTimer),M}_startRenderPage(B,M){var O,H;const k=this._intentStates.get(M);k&&((O=this._stats)==null||O.timeEnd("Page Request"),(H=k.displayReadyCapability)==null||H.resolve(B))}_renderPageChunk(B,M){for(let k=0,O=B.length;k<O;k++)M.operatorList.fnArray.push(B.fnArray[k]),M.operatorList.argsArray.push(B.argsArray[k]);M.operatorList.lastChunk=B.lastChunk,M.operatorList.separateAnnots=B.separateAnnots;for(const k of M.renderTasks)k.operatorListChanged();B.lastChunk&&it(this,d,ka).call(this,!0)}_pumpOperatorList({renderingIntent:B,cacheKey:M,annotationStorageSerializable:k}){const{map:O,transfers:H}=k,q=this._transport.messageHandler.sendWithStream("GetOperatorList",{pageIndex:this._pageIndex,intent:B,cacheKey:M,annotationStorage:O},H).getReader(),L=this._intentStates.get(M);L.streamReader=q;const F=()=>{q.read().then(({value:U,done:N})=>{if(N){L.streamReader=null;return}this._transport.destroyed||(this._renderPageChunk(U,L),F())},U=>{if(L.streamReader=null,!this._transport.destroyed){if(L.operatorList){L.operatorList.lastChunk=!0;for(const N of L.renderTasks)N.operatorListChanged();it(this,d,ka).call(this,!0)}if(L.displayReadyCapability)L.displayReadyCapability.reject(U);else if(L.opListReadCapability)L.opListReadCapability.reject(U);else throw U}})};F()}_abortOperatorList({intentState:B,reason:M,force:k=!1}){if(B.streamReader){if(B.streamReaderCancelTimeout&&(clearTimeout(B.streamReaderCancelTimeout),B.streamReaderCancelTimeout=null),!k){if(B.renderTasks.size>0)return;if(M instanceof _display_utils.RenderingCancelledException){let O=RENDERING_CANCELLED_TIMEOUT;M.extraDelay>0&&M.extraDelay<1e3&&(O+=M.extraDelay),B.streamReaderCancelTimeout=setTimeout(()=>{B.streamReaderCancelTimeout=null,this._abortOperatorList({intentState:B,reason:M,force:!0})},O);return}}if(B.streamReader.cancel(new _util.AbortException(M.message)).catch(()=>{}),B.streamReader=null,!this._transport.destroyed){for(const[O,H]of this._intentStates)if(H===B){this._intentStates.delete(O);break}this.cleanup()}}}get stats(){return this._stats}}c=new WeakMap,u=new WeakMap,d=new WeakSet,ka=function(B=!1){if(it(this,d,po).call(this),!He(this,u)||this.destroyed)return!1;if(B)return Ct(this,c,setTimeout(()=>{Ct(this,c,null),it(this,d,ka).call(this,!1)},DELAYED_CLEANUP_TIMEOUT)),!1;for(const{renderTasks:M,operatorList:k}of this._intentStates.values())if(M.size>0||!k.lastChunk)return!1;return this._intentStates.clear(),this.objs.clear(),Ct(this,u,!1),!0},po=function(){He(this,c)&&(clearTimeout(He(this,c)),Ct(this,c,null))},exports.PDFPageProxy=PDFPageProxy;class LoopbackPort{constructor(){bt(this,A,new Set);bt(this,b,Promise.resolve())}postMessage(B,M){const k={data:structuredClone(B,M?{transfer:M}:null)};He(this,b).then(()=>{for(const O of He(this,A))O.call(this,k)})}addEventListener(B,M){He(this,A).add(M)}removeEventListener(B,M){He(this,A).delete(M)}terminate(){He(this,A).clear()}}A=new WeakMap,b=new WeakMap,exports.LoopbackPort=LoopbackPort;const PDFWorkerUtil={isWorkerDisabled:!1,fallbackWorkerSrc:null,fakeWorkerId:0};exports.PDFWorkerUtil=PDFWorkerUtil;{if(_util.isNodeJS&&typeof commonjsRequire=="function")PDFWorkerUtil.isWorkerDisabled=!0,PDFWorkerUtil.fallbackWorkerSrc="./pdf.worker.js";else if(typeof document=="object"){const T=(g=document==null?void 0:document.currentScript)==null?void 0:g.src;T&&(PDFWorkerUtil.fallbackWorkerSrc=T.replace(/(\.(?:min\.)?js)(\?.*)?$/i,".worker$1$2"))}PDFWorkerUtil.isSameOrigin=function(T,B){let M;try{if(M=new URL(T),!M.origin||M.origin==="null")return!1}catch{return!1}const k=new URL(B,M);return M.origin===k.origin},PDFWorkerUtil.createCDNWrapper=function(T){const B=`importScripts("${T}");`;return URL.createObjectURL(new Blob([B]))}}const _PDFWorker=class _PDFWorker{constructor({name:T=null,port:B=null,verbosity:M=(0,_util.getVerbosityLevel)()}={}){var k;if(this.name=T,this.destroyed=!1,this.verbosity=M,this._readyCapability=new _util.PromiseCapability,this._port=null,this._webWorker=null,this._messageHandler=null,B){if((k=He(_PDFWorker,x))!=null&&k.has(B))throw new Error("Cannot use more than one PDFWorker per port.");(He(_PDFWorker,x)||Ct(_PDFWorker,x,new WeakMap)).set(B,this),this._initializeFromPort(B);return}this._initialize()}get promise(){return this._readyCapability.promise}get port(){return this._port}get messageHandler(){return this._messageHandler}_initializeFromPort(T){this._port=T,this._messageHandler=new _message_handler.MessageHandler("main","worker",T),this._messageHandler.on("ready",function(){}),this._readyCapability.resolve(),this._messageHandler.send("configure",{verbosity:this.verbosity})}_initialize(){if(!PDFWorkerUtil.isWorkerDisabled&&!_PDFWorker._mainThreadWorkerMessageHandler){let{workerSrc:T}=_PDFWorker;try{PDFWorkerUtil.isSameOrigin(window.location.href,T)||(T=PDFWorkerUtil.createCDNWrapper(new URL(T,window.location).href));const B=new Worker(T),M=new _message_handler.MessageHandler("main","worker",B),k=()=>{B.removeEventListener("error",O),M.destroy(),B.terminate(),this.destroyed?this._readyCapability.reject(new Error("Worker was destroyed")):this._setupFakeWorker()},O=()=>{this._webWorker||k()};B.addEventListener("error",O),M.on("test",j=>{if(B.removeEventListener("error",O),this.destroyed){k();return}j?(this._messageHandler=M,this._port=B,this._webWorker=B,this._readyCapability.resolve(),M.send("configure",{verbosity:this.verbosity})):(this._setupFakeWorker(),M.destroy(),B.terminate())}),M.on("ready",j=>{if(B.removeEventListener("error",O),this.destroyed){k();return}try{H()}catch{this._setupFakeWorker()}});const H=()=>{const j=new Uint8Array;M.send("test",j,[j.buffer])};H();return}catch{(0,_util.info)("The worker has been disabled.")}}this._setupFakeWorker()}_setupFakeWorker(){PDFWorkerUtil.isWorkerDisabled||((0,_util.warn)("Setting up fake worker."),PDFWorkerUtil.isWorkerDisabled=!0),_PDFWorker._setupFakeWorkerGlobal.then(T=>{if(this.destroyed){this._readyCapability.reject(new Error("Worker was destroyed"));return}const B=new LoopbackPort;this._port=B;const M=`fake${PDFWorkerUtil.fakeWorkerId++}`,k=new _message_handler.MessageHandler(M+"_worker",M,B);T.setup(k,B);const O=new _message_handler.MessageHandler(M,M+"_worker",B);this._messageHandler=O,this._readyCapability.resolve(),O.send("configure",{verbosity:this.verbosity})}).catch(T=>{this._readyCapability.reject(new Error(`Setting up fake worker failed: "${T.message}".`))})}destroy(){var T;this.destroyed=!0,this._webWorker&&(this._webWorker.terminate(),this._webWorker=null),(T=He(_PDFWorker,x))==null||T.delete(this._port),this._port=null,this._messageHandler&&(this._messageHandler.destroy(),this._messageHandler=null)}static fromPort(T){var M;if(!(T!=null&&T.port))throw new Error("PDFWorker.fromPort - invalid method signature.");const B=(M=He(this,x))==null?void 0:M.get(T.port);if(B){if(B._pendingDestroy)throw new Error("PDFWorker.fromPort - the worker is being destroyed.\nPlease remember to await `PDFDocumentLoadingTask.destroy()`-calls.");return B}return new _PDFWorker(T)}static get workerSrc(){if(_worker_options.GlobalWorkerOptions.workerSrc)return _worker_options.GlobalWorkerOptions.workerSrc;if(PDFWorkerUtil.fallbackWorkerSrc!==null)return _util.isNodeJS||(0,_display_utils.deprecated)('No "GlobalWorkerOptions.workerSrc" specified.'),PDFWorkerUtil.fallbackWorkerSrc;throw new Error('No "GlobalWorkerOptions.workerSrc" specified.')}static get _mainThreadWorkerMessageHandler(){var T;try{return((T=globalThis.pdfjsWorker)==null?void 0:T.WorkerMessageHandler)||null}catch{return null}}static get _setupFakeWorkerGlobal(){const loader=async()=>{const mainWorkerMessageHandler=this._mainThreadWorkerMessageHandler;if(mainWorkerMessageHandler)return mainWorkerMessageHandler;if(_util.isNodeJS&&typeof commonjsRequire=="function"){const worker=eval("require")(this.workerSrc);return worker.WorkerMessageHandler}return await(0,_display_utils.loadScript)(this.workerSrc),window.pdfjsWorker.WorkerMessageHandler};return(0,_util.shadow)(this,"_setupFakeWorkerGlobal",loader())}};x=new WeakMap,bt(_PDFWorker,x);let PDFWorker=_PDFWorker;exports.PDFWorker=PDFWorker;class WorkerTransport{constructor(B,M,k,O,H){bt(this,S);bt(this,y,new Map);bt(this,f,new Map);bt(this,m,new Map);bt(this,C,null);this.messageHandler=B,this.loadingTask=M,this.commonObjs=new PDFObjects,this.fontLoader=new _font_loader.FontLoader({ownerDocument:O.ownerDocument,styleElement:O.styleElement}),this._params=O,this.canvasFactory=H.canvasFactory,this.filterFactory=H.filterFactory,this.cMapReaderFactory=H.cMapReaderFactory,this.standardFontDataFactory=H.standardFontDataFactory,this.destroyed=!1,this.destroyCapability=null,this._networkStream=k,this._fullReader=null,this._lastProgress=null,this.downloadInfoCapability=new _util.PromiseCapability,this.setupMessageHandler()}get annotationStorage(){return(0,_util.shadow)(this,"annotationStorage",new _annotation_storage.AnnotationStorage)}getRenderingIntent(B,M=_util.AnnotationMode.ENABLE,k=null,O=!1){let H=_util.RenderingIntentFlag.DISPLAY,j=_annotation_storage.SerializableEmpty;switch(B){case"any":H=_util.RenderingIntentFlag.ANY;break;case"display":break;case"print":H=_util.RenderingIntentFlag.PRINT;break;default:(0,_util.warn)(`getRenderingIntent - invalid intent: ${B}`)}switch(M){case _util.AnnotationMode.DISABLE:H+=_util.RenderingIntentFlag.ANNOTATIONS_DISABLE;break;case _util.AnnotationMode.ENABLE:break;case _util.AnnotationMode.ENABLE_FORMS:H+=_util.RenderingIntentFlag.ANNOTATIONS_FORMS;break;case _util.AnnotationMode.ENABLE_STORAGE:H+=_util.RenderingIntentFlag.ANNOTATIONS_STORAGE,j=(H&_util.RenderingIntentFlag.PRINT&&k instanceof _annotation_storage.PrintAnnotationStorage?k:this.annotationStorage).serializable;break;default:(0,_util.warn)(`getRenderingIntent - invalid annotationMode: ${M}`)}return O&&(H+=_util.RenderingIntentFlag.OPLIST),{renderingIntent:H,cacheKey:`${H}_${j.hash}`,annotationStorageSerializable:j}}destroy(){var k;if(this.destroyCapability)return this.destroyCapability.promise;this.destroyed=!0,this.destroyCapability=new _util.PromiseCapability,(k=He(this,C))==null||k.reject(new Error("Worker was destroyed during onPassword callback"));const B=[];for(const O of He(this,f).values())B.push(O._destroy());He(this,f).clear(),He(this,m).clear(),this.hasOwnProperty("annotationStorage")&&this.annotationStorage.resetModified();const M=this.messageHandler.sendWithPromise("Terminate",null);return B.push(M),Promise.all(B).then(()=>{var O;this.commonObjs.clear(),this.fontLoader.clear(),He(this,y).clear(),this.filterFactory.destroy(),(O=this._networkStream)==null||O.cancelAllRequests(new _util.AbortException("Worker was terminated.")),this.messageHandler&&(this.messageHandler.destroy(),this.messageHandler=null),this.destroyCapability.resolve()},this.destroyCapability.reject),this.destroyCapability.promise}setupMessageHandler(){const{messageHandler:B,loadingTask:M}=this;B.on("GetReader",(k,O)=>{(0,_util.assert)(this._networkStream,"GetReader - no `IPDFStream` instance available."),this._fullReader=this._networkStream.getFullReader(),this._fullReader.onProgress=H=>{this._lastProgress={loaded:H.loaded,total:H.total}},O.onPull=()=>{this._fullReader.read().then(function({value:H,done:j}){if(j){O.close();return}(0,_util.assert)(H instanceof ArrayBuffer,"GetReader - expected an ArrayBuffer."),O.enqueue(new Uint8Array(H),1,[H])}).catch(H=>{O.error(H)})},O.onCancel=H=>{this._fullReader.cancel(H),O.ready.catch(j=>{if(!this.destroyed)throw j})}}),B.on("ReaderHeadersReady",k=>{const O=new _util.PromiseCapability,H=this._fullReader;return H.headersReady.then(()=>{var j;(!H.isStreamingSupported||!H.isRangeSupported)&&(this._lastProgress&&((j=M.onProgress)==null||j.call(M,this._lastProgress)),H.onProgress=q=>{var L;(L=M.onProgress)==null||L.call(M,{loaded:q.loaded,total:q.total})}),O.resolve({isStreamingSupported:H.isStreamingSupported,isRangeSupported:H.isRangeSupported,contentLength:H.contentLength})},O.reject),O.promise}),B.on("GetRangeReader",(k,O)=>{(0,_util.assert)(this._networkStream,"GetRangeReader - no `IPDFStream` instance available.");const H=this._networkStream.getRangeReader(k.begin,k.end);if(!H){O.close();return}O.onPull=()=>{H.read().then(function({value:j,done:q}){if(q){O.close();return}(0,_util.assert)(j instanceof ArrayBuffer,"GetRangeReader - expected an ArrayBuffer."),O.enqueue(new Uint8Array(j),1,[j])}).catch(j=>{O.error(j)})},O.onCancel=j=>{H.cancel(j),O.ready.catch(q=>{if(!this.destroyed)throw q})}}),B.on("GetDoc",({pdfInfo:k})=>{this._numPages=k.numPages,this._htmlForXfa=k.htmlForXfa,delete k.htmlForXfa,M._capability.resolve(new PDFDocumentProxy(k,this))}),B.on("DocException",function(k){let O;switch(k.name){case"PasswordException":O=new _util.PasswordException(k.message,k.code);break;case"InvalidPDFException":O=new _util.InvalidPDFException(k.message);break;case"MissingPDFException":O=new _util.MissingPDFException(k.message);break;case"UnexpectedResponseException":O=new _util.UnexpectedResponseException(k.message,k.status);break;case"UnknownErrorException":O=new _util.UnknownErrorException(k.message,k.details);break;default:(0,_util.unreachable)("DocException - expected a valid Error.")}M._capability.reject(O)}),B.on("PasswordRequest",k=>{if(Ct(this,C,new _util.PromiseCapability),M.onPassword){const O=H=>{H instanceof Error?He(this,C).reject(H):He(this,C).resolve({password:H})};try{M.onPassword(O,k.code)}catch(H){He(this,C).reject(H)}}else He(this,C).reject(new _util.PasswordException(k.message,k.code));return He(this,C).promise}),B.on("DataLoaded",k=>{var O;(O=M.onProgress)==null||O.call(M,{loaded:k.length,total:k.length}),this.downloadInfoCapability.resolve(k)}),B.on("StartRenderPage",k=>{if(this.destroyed)return;He(this,f).get(k.pageIndex)._startRenderPage(k.transparency,k.cacheKey)}),B.on("commonobj",([k,O,H])=>{var j;if(!this.destroyed&&!this.commonObjs.has(k))switch(O){case"Font":const q=this._params;if("error"in H){const U=H.error;(0,_util.warn)(`Error during font loading: ${U}`),this.commonObjs.resolve(k,U);break}const L=q.pdfBug&&((j=globalThis.FontInspector)!=null&&j.enabled)?(U,N)=>globalThis.FontInspector.fontAdded(U,N):null,F=new _font_loader.FontFaceObject(H,{isEvalSupported:q.isEvalSupported,disableFontFace:q.disableFontFace,ignoreErrors:q.ignoreErrors,inspectFont:L});this.fontLoader.bind(F).catch(U=>B.sendWithPromise("FontFallback",{id:k})).finally(()=>{!q.fontExtraProperties&&F.data&&(F.data=null),this.commonObjs.resolve(k,F)});break;case"FontPath":case"Image":case"Pattern":this.commonObjs.resolve(k,H);break;default:throw new Error(`Got unknown common object type ${O}`)}}),B.on("obj",([k,O,H,j])=>{var L;if(this.destroyed)return;const q=He(this,f).get(O);if(!q.objs.has(k))switch(H){case"Image":if(q.objs.resolve(k,j),j){let F;if(j.bitmap){const{width:U,height:N}=j;F=U*N*4}else F=((L=j.data)==null?void 0:L.length)||0;F>_util.MAX_IMAGE_SIZE_TO_CACHE&&(q._maybeCleanupAfterRender=!0)}break;case"Pattern":q.objs.resolve(k,j);break;default:throw new Error(`Got unknown object type ${H}`)}}),B.on("DocProgress",k=>{var O;this.destroyed||(O=M.onProgress)==null||O.call(M,{loaded:k.loaded,total:k.total})}),B.on("FetchBuiltInCMap",k=>this.destroyed?Promise.reject(new Error("Worker was destroyed.")):this.cMapReaderFactory?this.cMapReaderFactory.fetch(k):Promise.reject(new Error("CMapReaderFactory not initialized, see the `useWorkerFetch` parameter."))),B.on("FetchStandardFontData",k=>this.destroyed?Promise.reject(new Error("Worker was destroyed.")):this.standardFontDataFactory?this.standardFontDataFactory.fetch(k):Promise.reject(new Error("StandardFontDataFactory not initialized, see the `useWorkerFetch` parameter.")))}getData(){return this.messageHandler.sendWithPromise("GetData",null)}saveDocument(){var k;this.annotationStorage.size<=0&&(0,_util.warn)("saveDocument called while `annotationStorage` is empty, please use the getData-method instead.");const{map:B,transfers:M}=this.annotationStorage.serializable;return this.messageHandler.sendWithPromise("SaveDocument",{isPureXfa:!!this._htmlForXfa,numPages:this._numPages,annotationStorage:B,filename:((k=this._fullReader)==null?void 0:k.filename)??null},M).finally(()=>{this.annotationStorage.resetModified()})}getPage(B){if(!Number.isInteger(B)||B<=0||B>this._numPages)return Promise.reject(new Error("Invalid page request."));const M=B-1,k=He(this,m).get(M);if(k)return k;const O=this.messageHandler.sendWithPromise("GetPage",{pageIndex:M}).then(H=>{if(this.destroyed)throw new Error("Transport destroyed");const j=new PDFPageProxy(M,H,this,this._params.pdfBug);return He(this,f).set(M,j),j});return He(this,m).set(M,O),O}getPageIndex(B){return typeof B!="object"||B===null||!Number.isInteger(B.num)||B.num<0||!Number.isInteger(B.gen)||B.gen<0?Promise.reject(new Error("Invalid pageIndex request.")):this.messageHandler.sendWithPromise("GetPageIndex",{num:B.num,gen:B.gen})}getAnnotations(B,M){return this.messageHandler.sendWithPromise("GetAnnotations",{pageIndex:B,intent:M})}getFieldObjects(){return it(this,S,go).call(this,"GetFieldObjects")}hasJSActions(){return it(this,S,go).call(this,"HasJSActions")}getCalculationOrderIds(){return this.messageHandler.sendWithPromise("GetCalculationOrderIds",null)}getDestinations(){return this.messageHandler.sendWithPromise("GetDestinations",null)}getDestination(B){return typeof B!="string"?Promise.reject(new Error("Invalid destination request.")):this.messageHandler.sendWithPromise("GetDestination",{id:B})}getPageLabels(){return this.messageHandler.sendWithPromise("GetPageLabels",null)}getPageLayout(){return this.messageHandler.sendWithPromise("GetPageLayout",null)}getPageMode(){return this.messageHandler.sendWithPromise("GetPageMode",null)}getViewerPreferences(){return this.messageHandler.sendWithPromise("GetViewerPreferences",null)}getOpenAction(){return this.messageHandler.sendWithPromise("GetOpenAction",null)}getAttachments(){return this.messageHandler.sendWithPromise("GetAttachments",null)}getDocJSActions(){return it(this,S,go).call(this,"GetDocJSActions")}getPageJSActions(B){return this.messageHandler.sendWithPromise("GetPageJSActions",{pageIndex:B})}getStructTree(B){return this.messageHandler.sendWithPromise("GetStructTree",{pageIndex:B})}getOutline(){return this.messageHandler.sendWithPromise("GetOutline",null)}getOptionalContentConfig(){return this.messageHandler.sendWithPromise("GetOptionalContentConfig",null).then(B=>new _optional_content_config.OptionalContentConfig(B))}getPermissions(){return this.messageHandler.sendWithPromise("GetPermissions",null)}getMetadata(){const B="GetMetadata",M=He(this,y).get(B);if(M)return M;const k=this.messageHandler.sendWithPromise(B,null).then(O=>{var H,j;return{info:O[0],metadata:O[1]?new _metadata.Metadata(O[1]):null,contentDispositionFilename:((H=this._fullReader)==null?void 0:H.filename)??null,contentLength:((j=this._fullReader)==null?void 0:j.contentLength)??null}});return He(this,y).set(B,k),k}getMarkInfo(){return this.messageHandler.sendWithPromise("GetMarkInfo",null)}async startCleanup(B=!1){if(!this.destroyed){await this.messageHandler.sendWithPromise("Cleanup",null);for(const M of He(this,f).values())if(!M.cleanup())throw new Error(`startCleanup: Page ${M.pageNumber} is currently rendering.`);this.commonObjs.clear(),B||this.fontLoader.clear(),He(this,y).clear(),this.filterFactory.destroy(!0)}}get loadingParams(){const{disableAutoFetch:B,enableXfa:M}=this._params;return(0,_util.shadow)(this,"loadingParams",{disableAutoFetch:B,enableXfa:M})}}y=new WeakMap,f=new WeakMap,m=new WeakMap,C=new WeakMap,S=new WeakSet,go=function(B,M=null){const k=He(this,y).get(B);if(k)return k;const O=this.messageHandler.sendWithPromise(B,M);return He(this,y).set(B,O),O};class PDFObjects{constructor(){bt(this,I);bt(this,_,Object.create(null))}get(B,M=null){if(M){const O=it(this,I,Gs).call(this,B);return O.capability.promise.then(()=>M(O.data)),null}const k=He(this,_)[B];if(!(k!=null&&k.capability.settled))throw new Error(`Requesting object that isn't resolved yet ${B}.`);return k.data}has(B){const M=He(this,_)[B];return(M==null?void 0:M.capability.settled)||!1}resolve(B,M=null){const k=it(this,I,Gs).call(this,B);k.data=M,k.capability.resolve()}clear(){var B;for(const M in He(this,_)){const{data:k}=He(this,_)[M];(B=k==null?void 0:k.bitmap)==null||B.close()}Ct(this,_,Object.create(null))}}_=new WeakMap,I=new WeakSet,Gs=function(B){var M;return(M=He(this,_))[B]||(M[B]={capability:new _util.PromiseCapability,data:null})};class RenderTask{constructor(B){bt(this,P,null);Ct(this,P,B),this.onContinue=null}get promise(){return He(this,P).capability.promise}cancel(B=0){He(this,P).cancel(null,B)}get separateAnnots(){const{separateAnnots:B}=He(this,P).operatorList;if(!B)return!1;const{annotationCanvasMap:M}=He(this,P);return B.form||B.canvas&&(M==null?void 0:M.size)>0}}P=new WeakMap,exports.RenderTask=RenderTask;const R=class R{constructor({callback:B,params:M,objs:k,commonObjs:O,annotationCanvasMap:H,operatorList:j,pageIndex:q,canvasFactory:L,filterFactory:F,useRequestAnimationFrame:U=!1,pdfBug:N=!1,pageColors:D=null}){this.callback=B,this.params=M,this.objs=k,this.commonObjs=O,this.annotationCanvasMap=H,this.operatorListIdx=null,this.operatorList=j,this._pageIndex=q,this.canvasFactory=L,this.filterFactory=F,this._pdfBug=N,this.pageColors=D,this.running=!1,this.graphicsReadyCallback=null,this.graphicsReady=!1,this._useRequestAnimationFrame=U===!0&&typeof window<"u",this.cancelled=!1,this.capability=new _util.PromiseCapability,this.task=new RenderTask(this),this._cancelBound=this.cancel.bind(this),this._continueBound=this._continue.bind(this),this._scheduleNextBound=this._scheduleNext.bind(this),this._nextBound=this._next.bind(this),this._canvas=M.canvasContext.canvas}get completed(){return this.capability.promise.catch(function(){})}initializeGraphics({transparency:B=!1,optionalContentConfig:M}){var q,L;if(this.cancelled)return;if(this._canvas){if(He(R,E).has(this._canvas))throw new Error("Cannot use the same canvas during multiple render() operations. Use different canvas or ensure previous operations were cancelled or completed.");He(R,E).add(this._canvas)}this._pdfBug&&((q=globalThis.StepperManager)!=null&&q.enabled)&&(this.stepper=globalThis.StepperManager.create(this._pageIndex),this.stepper.init(this.operatorList),this.stepper.nextBreakPoint=this.stepper.getNextBreakPoint());const{canvasContext:k,viewport:O,transform:H,background:j}=this.params;this.gfx=new _canvas.CanvasGraphics(k,this.commonObjs,this.objs,this.canvasFactory,this.filterFactory,{optionalContentConfig:M},this.annotationCanvasMap,this.pageColors),this.gfx.beginDrawing({transform:H,viewport:O,transparency:B,background:j}),this.operatorListIdx=0,this.graphicsReady=!0,(L=this.graphicsReadyCallback)==null||L.call(this)}cancel(B=null,M=0){var k;this.running=!1,this.cancelled=!0,(k=this.gfx)==null||k.endDrawing(),He(R,E).delete(this._canvas),this.callback(B||new _display_utils.RenderingCancelledException(`Rendering cancelled, page ${this._pageIndex+1}`,M))}operatorListChanged(){var B;if(!this.graphicsReady){this.graphicsReadyCallback||(this.graphicsReadyCallback=this._continueBound);return}(B=this.stepper)==null||B.updateOperatorList(this.operatorList),!this.running&&this._continue()}_continue(){this.running=!0,!this.cancelled&&(this.task.onContinue?this.task.onContinue(this._scheduleNextBound):this._scheduleNext())}_scheduleNext(){this._useRequestAnimationFrame?window.requestAnimationFrame(()=>{this._nextBound().catch(this._cancelBound)}):Promise.resolve().then(this._nextBound).catch(this._cancelBound)}async _next(){this.cancelled||(this.operatorListIdx=this.gfx.executeOperatorList(this.operatorList,this.operatorListIdx,this._continueBound,this.stepper),this.operatorListIdx===this.operatorList.argsArray.length&&(this.running=!1,this.operatorList.lastChunk&&(this.gfx.endDrawing(),He(R,E).delete(this._canvas),this.callback())))}};E=new WeakMap,bt(R,E,new WeakSet);let InternalRenderTask=R;const version="3.11.174";exports.version=version;const build="ce8716743";exports.build=build},(a,s,c)=>{var g,x,y,Su,m;Object.defineProperty(s,"__esModule",{value:!0}),s.SerializableEmpty=s.PrintAnnotationStorage=s.AnnotationStorage=void 0;var u=c(1),d=c(4),p=c(8);const v=Object.freeze({map:null,hash:"",transfers:void 0});s.SerializableEmpty=v;class A{constructor(){bt(this,y);bt(this,g,!1);bt(this,x,new Map);this.onSetModified=null,this.onResetModified=null,this.onAnnotationEditor=null}getValue(S,w){const _=He(this,x).get(S);return _===void 0?w:Object.assign(w,_)}getRawValue(S){return He(this,x).get(S)}remove(S){if(He(this,x).delete(S),He(this,x).size===0&&this.resetModified(),typeof this.onAnnotationEditor=="function"){for(const w of He(this,x).values())if(w instanceof d.AnnotationEditor)return;this.onAnnotationEditor(null)}}setValue(S,w){const _=He(this,x).get(S);let I=!1;if(_!==void 0)for(const[$,P]of Object.entries(w))_[$]!==P&&(I=!0,_[$]=P);else I=!0,He(this,x).set(S,w);I&&it(this,y,Su).call(this),w instanceof d.AnnotationEditor&&typeof this.onAnnotationEditor=="function"&&this.onAnnotationEditor(w.constructor._type)}has(S){return He(this,x).has(S)}getAll(){return He(this,x).size>0?(0,u.objectFromMap)(He(this,x)):null}setAll(S){for(const[w,_]of Object.entries(S))this.setValue(w,_)}get size(){return He(this,x).size}resetModified(){He(this,g)&&(Ct(this,g,!1),typeof this.onResetModified=="function"&&this.onResetModified())}get print(){return new b(this)}get serializable(){if(He(this,x).size===0)return v;const S=new Map,w=new p.MurmurHash3_64,_=[],I=Object.create(null);let $=!1;for(const[P,E]of He(this,x)){const R=E instanceof d.AnnotationEditor?E.serialize(!1,I):E;R&&(S.set(P,R),w.update(`${P}:${JSON.stringify(R)}`),$||($=!!R.bitmap))}if($)for(const P of S.values())P.bitmap&&_.push(P.bitmap);return S.size>0?{map:S,hash:w.hexdigest(),transfers:_}:v}}g=new WeakMap,x=new WeakMap,y=new WeakSet,Su=function(){He(this,g)||(Ct(this,g,!0),typeof this.onSetModified=="function"&&this.onSetModified())},s.AnnotationStorage=A;class b extends A{constructor(w){super();bt(this,m);const{map:_,hash:I,transfers:$}=w.serializable,P=structuredClone(_,$?{transfer:$}:null);Ct(this,m,{map:P,hash:I,transfers:$})}get print(){(0,u.unreachable)("Should not call PrintAnnotationStorage.print")}get serializable(){return He(this,m)}}m=new WeakMap,s.PrintAnnotationStorage=b},(a,s,c)=>{var b,g,x,y,f,m,C,S,w,_,I,$,P,E,R,Vs,Qs,M,qs,Ys,$u,_u,Iu,Ks,Pu;Object.defineProperty(s,"__esModule",{value:!0}),s.AnnotationEditor=void 0;var u=c(5),d=c(1),p=c(6);const U=class U{constructor(D){bt(this,R);bt(this,b,"");bt(this,g,!1);bt(this,x,null);bt(this,y,null);bt(this,f,null);bt(this,m,!1);bt(this,C,null);bt(this,S,this.focusin.bind(this));bt(this,w,this.focusout.bind(this));bt(this,_,!1);bt(this,I,!1);bt(this,$,!1);yr(this,"_initialOptions",Object.create(null));yr(this,"_uiManager",null);yr(this,"_focusEventsAllowed",!0);yr(this,"_l10nPromise",null);bt(this,P,!1);bt(this,E,U._zIndex++);this.constructor===U&&(0,d.unreachable)("Cannot initialize AnnotationEditor."),this.parent=D.parent,this.id=D.id,this.width=this.height=null,this.pageIndex=D.parent.pageIndex,this.name=D.name,this.div=null,this._uiManager=D.uiManager,this.annotationElementId=null,this._willKeepAspectRatio=!1,this._initialOptions.isCentered=D.isCentered,this._structTreeParentId=null;const{rotation:W,rawDims:{pageWidth:Z,pageHeight:Q,pageX:Y,pageY:J}}=this.parent.viewport;this.rotation=W,this.pageRotation=(360+W-this._uiManager.viewParameters.rotation)%360,this.pageDimensions=[Z,Q],this.pageTranslation=[Y,J];const[ee,re]=this.parentDimensions;this.x=D.x/ee,this.y=D.y/re,this.isAttachedToDOM=!1,this.deleted=!1}get editorType(){return Object.getPrototypeOf(this).constructor._type}static get _defaultLineColor(){return(0,d.shadow)(this,"_defaultLineColor",this._colorManager.getHexCode("CanvasText"))}static deleteAnnotationElement(D){const W=new A({id:D.parent.getNextId(),parent:D.parent,uiManager:D._uiManager});W.annotationElementId=D.annotationElementId,W.deleted=!0,W._uiManager.addToAnnotationStorage(W)}static initialize(D,W=null){if(U._l10nPromise||(U._l10nPromise=new Map(["editor_alt_text_button_label","editor_alt_text_edit_button_label","editor_alt_text_decorative_tooltip"].map(Q=>[Q,D.get(Q)]))),W!=null&&W.strings)for(const Q of W.strings)U._l10nPromise.set(Q,D.get(Q));if(U._borderLineWidth!==-1)return;const Z=getComputedStyle(document.documentElement);U._borderLineWidth=parseFloat(Z.getPropertyValue("--outline-width"))||0}static updateDefaultParams(D,W){}static get defaultPropertiesToUpdate(){return[]}static isHandlingMimeForPasting(D){return!1}static paste(D,W){(0,d.unreachable)("Not implemented")}get propertiesToUpdate(){return[]}get _isDraggable(){return He(this,P)}set _isDraggable(D){var W;Ct(this,P,D),(W=this.div)==null||W.classList.toggle("draggable",D)}center(){const[D,W]=this.pageDimensions;switch(this.parentRotation){case 90:this.x-=this.height*W/(D*2),this.y+=this.width*D/(W*2);break;case 180:this.x+=this.width/2,this.y+=this.height/2;break;case 270:this.x+=this.height*W/(D*2),this.y-=this.width*D/(W*2);break;default:this.x-=this.width/2,this.y-=this.height/2;break}this.fixAndSetPosition()}addCommands(D){this._uiManager.addCommands(D)}get currentLayer(){return this._uiManager.currentLayer}setInBackground(){this.div.style.zIndex=0}setInForeground(){this.div.style.zIndex=He(this,E)}setParent(D){D!==null&&(this.pageIndex=D.pageIndex,this.pageDimensions=D.pageDimensions),this.parent=D}focusin(D){this._focusEventsAllowed&&(He(this,_)?Ct(this,_,!1):this.parent.setSelected(this))}focusout(D){var Z;if(!this._focusEventsAllowed||!this.isAttachedToDOM)return;const W=D.relatedTarget;W!=null&&W.closest(`#${this.id}`)||(D.preventDefault(),(Z=this.parent)!=null&&Z.isMultipleSelection||this.commitOrRemove())}commitOrRemove(){this.isEmpty()?this.remove():this.commit()}commit(){this.addToAnnotationStorage()}addToAnnotationStorage(){this._uiManager.addToAnnotationStorage(this)}setAt(D,W,Z,Q){const[Y,J]=this.parentDimensions;[Z,Q]=this.screenToPageTranslation(Z,Q),this.x=(D+Z)/Y,this.y=(W+Q)/J,this.fixAndSetPosition()}translate(D,W){it(this,R,Vs).call(this,this.parentDimensions,D,W)}translateInPage(D,W){it(this,R,Vs).call(this,this.pageDimensions,D,W),this.div.scrollIntoView({block:"nearest"})}drag(D,W){const[Z,Q]=this.parentDimensions;if(this.x+=D/Z,this.y+=W/Q,this.parent&&(this.x<0||this.x>1||this.y<0||this.y>1)){const{x:ae,y:V}=this.div.getBoundingClientRect();this.parent.findNewParent(this,ae,V)&&(this.x-=Math.floor(this.x),this.y-=Math.floor(this.y))}let{x:Y,y:J}=this;const[ee,re]=it(this,R,Qs).call(this);Y+=ee,J+=re,this.div.style.left=`${(100*Y).toFixed(2)}%`,this.div.style.top=`${(100*J).toFixed(2)}%`,this.div.scrollIntoView({block:"nearest"})}fixAndSetPosition(){const[D,W]=this.pageDimensions;let{x:Z,y:Q,width:Y,height:J}=this;switch(Y*=D,J*=W,Z*=D,Q*=W,this.rotation){case 0:Z=Math.max(0,Math.min(D-Y,Z)),Q=Math.max(0,Math.min(W-J,Q));break;case 90:Z=Math.max(0,Math.min(D-J,Z)),Q=Math.min(W,Math.max(Y,Q));break;case 180:Z=Math.min(D,Math.max(Y,Z)),Q=Math.min(W,Math.max(J,Q));break;case 270:Z=Math.min(D,Math.max(J,Z)),Q=Math.max(0,Math.min(W-Y,Q));break}this.x=Z/=D,this.y=Q/=W;const[ee,re]=it(this,R,Qs).call(this);Z+=ee,Q+=re;const{style:ae}=this.div;ae.left=`${(100*Z).toFixed(2)}%`,ae.top=`${(100*Q).toFixed(2)}%`,this.moveInDOM()}screenToPageTranslation(D,W){var Z;return it(Z=U,M,qs).call(Z,D,W,this.parentRotation)}pageTranslationToScreen(D,W){var Z;return it(Z=U,M,qs).call(Z,D,W,360-this.parentRotation)}get parentScale(){return this._uiManager.viewParameters.realScale}get parentRotation(){return(this._uiManager.viewParameters.rotation+this.pageRotation)%360}get parentDimensions(){const{parentScale:D,pageDimensions:[W,Z]}=this,Q=W*D,Y=Z*D;return d.FeatureTest.isCSSRoundSupported?[Math.round(Q),Math.round(Y)]:[Q,Y]}setDims(D,W){var Y;const[Z,Q]=this.parentDimensions;this.div.style.width=`${(100*D/Z).toFixed(2)}%`,He(this,m)||(this.div.style.height=`${(100*W/Q).toFixed(2)}%`),(Y=He(this,x))==null||Y.classList.toggle("small",D<U.SMALL_EDITOR_SIZE||W<U.SMALL_EDITOR_SIZE)}fixDims(){const{style:D}=this.div,{height:W,width:Z}=D,Q=Z.endsWith("%"),Y=!He(this,m)&&W.endsWith("%");if(Q&&Y)return;const[J,ee]=this.parentDimensions;Q||(D.width=`${(100*parseFloat(Z)/J).toFixed(2)}%`),!He(this,m)&&!Y&&(D.height=`${(100*parseFloat(W)/ee).toFixed(2)}%`)}getInitialTranslation(){return[0,0]}async addAltTextButton(){if(He(this,x))return;const D=Ct(this,x,document.createElement("button"));D.className="altText";const W=await U._l10nPromise.get("editor_alt_text_button_label");D.textContent=W,D.setAttribute("aria-label",W),D.tabIndex="0",D.addEventListener("contextmenu",p.noContextMenu),D.addEventListener("pointerdown",Z=>Z.stopPropagation()),D.addEventListener("click",Z=>{Z.preventDefault(),this._uiManager.editAltText(this)},{capture:!0}),D.addEventListener("keydown",Z=>{Z.target===D&&Z.key==="Enter"&&(Z.preventDefault(),this._uiManager.editAltText(this))}),it(this,R,Ks).call(this),this.div.append(D),U.SMALL_EDITOR_SIZE||(U.SMALL_EDITOR_SIZE=Math.min(128,Math.round(D.getBoundingClientRect().width*1.4)))}getClientDimensions(){return this.div.getBoundingClientRect()}get altTextData(){return{altText:He(this,b),decorative:He(this,g)}}set altTextData({altText:D,decorative:W}){He(this,b)===D&&He(this,g)===W||(Ct(this,b,D),Ct(this,g,W),it(this,R,Ks).call(this))}render(){this.div=document.createElement("div"),this.div.setAttribute("data-editor-rotation",(360-this.rotation)%360),this.div.className=this.name,this.div.setAttribute("id",this.id),this.div.setAttribute("tabIndex",0),this.setInForeground(),this.div.addEventListener("focusin",He(this,S)),this.div.addEventListener("focusout",He(this,w));const[D,W]=this.parentDimensions;this.parentRotation%180!==0&&(this.div.style.maxWidth=`${(100*W/D).toFixed(2)}%`,this.div.style.maxHeight=`${(100*D/W).toFixed(2)}%`);const[Z,Q]=this.getInitialTranslation();return this.translate(Z,Q),(0,u.bindEvents)(this,this.div,["pointerdown"]),this.div}pointerdown(D){const{isMac:W}=d.FeatureTest.platform;if(D.button!==0||D.ctrlKey&&W){D.preventDefault();return}Ct(this,_,!0),it(this,R,Pu).call(this,D)}moveInDOM(){var D;(D=this.parent)==null||D.moveEditorInDOM(this)}_setParentAndPosition(D,W,Z){D.changeParent(this),this.x=W,this.y=Z,this.fixAndSetPosition()}getRect(D,W){const Z=this.parentScale,[Q,Y]=this.pageDimensions,[J,ee]=this.pageTranslation,re=D/Z,ae=W/Z,V=this.x*Q,K=this.y*Y,te=this.width*Q,ie=this.height*Y;switch(this.rotation){case 0:return[V+re+J,Y-K-ae-ie+ee,V+re+te+J,Y-K-ae+ee];case 90:return[V+ae+J,Y-K+re+ee,V+ae+ie+J,Y-K+re+te+ee];case 180:return[V-re-te+J,Y-K+ae+ee,V-re+J,Y-K+ae+ie+ee];case 270:return[V-ae-ie+J,Y-K-re-te+ee,V-ae+J,Y-K-re+ee];default:throw new Error("Invalid rotation")}}getRectInCurrentCoords(D,W){const[Z,Q,Y,J]=D,ee=Y-Z,re=J-Q;switch(this.rotation){case 0:return[Z,W-J,ee,re];case 90:return[Z,W-Q,re,ee];case 180:return[Y,W-Q,ee,re];case 270:return[Y,W-J,re,ee];default:throw new Error("Invalid rotation")}}onceAdded(){}isEmpty(){return!1}enableEditMode(){Ct(this,$,!0)}disableEditMode(){Ct(this,$,!1)}isInEditMode(){return He(this,$)}shouldGetKeyboardEvents(){return!1}needsToBeRebuilt(){return this.div&&!this.isAttachedToDOM}rebuild(){var D,W;(D=this.div)==null||D.addEventListener("focusin",He(this,S)),(W=this.div)==null||W.addEventListener("focusout",He(this,w))}serialize(D=!1,W=null){(0,d.unreachable)("An editor must be serializable")}static deserialize(D,W,Z){const Q=new this.prototype.constructor({parent:W,id:W.getNextId(),uiManager:Z});Q.rotation=D.rotation;const[Y,J]=Q.pageDimensions,[ee,re,ae,V]=Q.getRectInCurrentCoords(D.rect,J);return Q.x=ee/Y,Q.y=re/J,Q.width=ae/Y,Q.height=V/J,Q}remove(){var D;this.div.removeEventListener("focusin",He(this,S)),this.div.removeEventListener("focusout",He(this,w)),this.isEmpty()||this.commit(),this.parent?this.parent.remove(this):this._uiManager.removeEditor(this),(D=He(this,x))==null||D.remove(),Ct(this,x,null),Ct(this,y,null)}get isResizable(){return!1}makeResizable(){this.isResizable&&(it(this,R,$u).call(this),He(this,C).classList.remove("hidden"))}select(){var D;this.makeResizable(),(D=this.div)==null||D.classList.add("selectedEditor")}unselect(){var D,W,Z;(D=He(this,C))==null||D.classList.add("hidden"),(W=this.div)==null||W.classList.remove("selectedEditor"),(Z=this.div)!=null&&Z.contains(document.activeElement)&&this._uiManager.currentLayer.div.focus()}updateParams(D,W){}disableEditing(){He(this,x)&&(He(this,x).hidden=!0)}enableEditing(){He(this,x)&&(He(this,x).hidden=!1)}enterInEditMode(){}get contentDiv(){return this.div}get isEditing(){return He(this,I)}set isEditing(D){Ct(this,I,D),this.parent&&(D?(this.parent.setSelected(this),this.parent.setActiveEditor(this)):this.parent.setActiveEditor(null))}setAspectRatio(D,W){Ct(this,m,!0);const Z=D/W,{style:Q}=this.div;Q.aspectRatio=Z,Q.height="auto"}static get MIN_SIZE(){return 16}};b=new WeakMap,g=new WeakMap,x=new WeakMap,y=new WeakMap,f=new WeakMap,m=new WeakMap,C=new WeakMap,S=new WeakMap,w=new WeakMap,_=new WeakMap,I=new WeakMap,$=new WeakMap,P=new WeakMap,E=new WeakMap,R=new WeakSet,Vs=function([D,W],Z,Q){[Z,Q]=this.screenToPageTranslation(Z,Q),this.x+=Z/D,this.y+=Q/W,this.fixAndSetPosition()},Qs=function(){const[D,W]=this.parentDimensions,{_borderLineWidth:Z}=U,Q=Z/D,Y=Z/W;switch(this.rotation){case 90:return[-Q,Y];case 180:return[Q,Y];case 270:return[Q,-Y];default:return[-Q,-Y]}},M=new WeakSet,qs=function(D,W,Z){switch(Z){case 90:return[W,-D];case 180:return[-D,-W];case 270:return[-W,D];default:return[D,W]}},Ys=function(D){switch(D){case 90:{const[W,Z]=this.pageDimensions;return[0,-W/Z,Z/W,0]}case 180:return[-1,0,0,-1];case 270:{const[W,Z]=this.pageDimensions;return[0,W/Z,-Z/W,0]}default:return[1,0,0,1]}},$u=function(){if(He(this,C))return;Ct(this,C,document.createElement("div")),He(this,C).classList.add("resizers");const D=["topLeft","topRight","bottomRight","bottomLeft"];this._willKeepAspectRatio||D.push("topMiddle","middleRight","bottomMiddle","middleLeft");for(const W of D){const Z=document.createElement("div");He(this,C).append(Z),Z.classList.add("resizer",W),Z.addEventListener("pointerdown",it(this,R,_u).bind(this,W)),Z.addEventListener("contextmenu",p.noContextMenu)}this.div.prepend(He(this,C))},_u=function(D,W){W.preventDefault();const{isMac:Z}=d.FeatureTest.platform;if(W.button!==0||W.ctrlKey&&Z)return;const Q=it(this,R,Iu).bind(this,D),Y=this._isDraggable;this._isDraggable=!1;const J={passive:!0,capture:!0};window.addEventListener("pointermove",Q,J);const ee=this.x,re=this.y,ae=this.width,V=this.height,K=this.parent.div.style.cursor,te=this.div.style.cursor;this.div.style.cursor=this.parent.div.style.cursor=window.getComputedStyle(W.target).cursor;const ie=()=>{this._isDraggable=Y,window.removeEventListener("pointerup",ie),window.removeEventListener("blur",ie),window.removeEventListener("pointermove",Q,J),this.parent.div.style.cursor=K,this.div.style.cursor=te;const ce=this.x,me=this.y,we=this.width,ve=this.height;ce===ee&&me===re&&we===ae&&ve===V||this.addCommands({cmd:()=>{this.width=we,this.height=ve,this.x=ce,this.y=me;const[ge,ue]=this.parentDimensions;this.setDims(ge*we,ue*ve),this.fixAndSetPosition()},undo:()=>{this.width=ae,this.height=V,this.x=ee,this.y=re;const[ge,ue]=this.parentDimensions;this.setDims(ge*ae,ue*V),this.fixAndSetPosition()},mustExec:!0})};window.addEventListener("pointerup",ie),window.addEventListener("blur",ie)},Iu=function(D,W){const[Z,Q]=this.parentDimensions,Y=this.x,J=this.y,ee=this.width,re=this.height,ae=U.MIN_SIZE/Z,V=U.MIN_SIZE/Q,K=ye=>Math.round(ye*1e4)/1e4,te=it(this,R,Ys).call(this,this.rotation),ie=(ye,Pe)=>[te[0]*ye+te[2]*Pe,te[1]*ye+te[3]*Pe],ce=it(this,R,Ys).call(this,360-this.rotation),me=(ye,Pe)=>[ce[0]*ye+ce[2]*Pe,ce[1]*ye+ce[3]*Pe];let we,ve,ge=!1,ue=!1;switch(D){case"topLeft":ge=!0,we=(ye,Pe)=>[0,0],ve=(ye,Pe)=>[ye,Pe];break;case"topMiddle":we=(ye,Pe)=>[ye/2,0],ve=(ye,Pe)=>[ye/2,Pe];break;case"topRight":ge=!0,we=(ye,Pe)=>[ye,0],ve=(ye,Pe)=>[0,Pe];break;case"middleRight":ue=!0,we=(ye,Pe)=>[ye,Pe/2],ve=(ye,Pe)=>[0,Pe/2];break;case"bottomRight":ge=!0,we=(ye,Pe)=>[ye,Pe],ve=(ye,Pe)=>[0,0];break;case"bottomMiddle":we=(ye,Pe)=>[ye/2,Pe],ve=(ye,Pe)=>[ye/2,0];break;case"bottomLeft":ge=!0,we=(ye,Pe)=>[0,Pe],ve=(ye,Pe)=>[ye,0];break;case"middleLeft":ue=!0,we=(ye,Pe)=>[0,Pe/2],ve=(ye,Pe)=>[ye,Pe/2];break}const se=we(ee,re),oe=ve(ee,re);let de=ie(...oe);const le=K(Y+de[0]),xe=K(J+de[1]);let Ce=1,$e=1,[Se,Ee]=this.screenToPageTranslation(W.movementX,W.movementY);if([Se,Ee]=me(Se/Z,Ee/Q),ge){const ye=Math.hypot(ee,re);Ce=$e=Math.max(Math.min(Math.hypot(oe[0]-se[0]-Se,oe[1]-se[1]-Ee)/ye,1/ee,1/re),ae/ee,V/re)}else ue?Ce=Math.max(ae,Math.min(1,Math.abs(oe[0]-se[0]-Se)))/ee:$e=Math.max(V,Math.min(1,Math.abs(oe[1]-se[1]-Ee)))/re;const Ae=K(ee*Ce),pe=K(re*$e);de=ie(...ve(Ae,pe));const he=le-de[0],Ie=xe-de[1];this.width=Ae,this.height=pe,this.x=he,this.y=Ie,this.setDims(Z*Ae,Q*pe),this.fixAndSetPosition()},Ks=async function(){var Z;const D=He(this,x);if(!D)return;if(!He(this,b)&&!He(this,g)){D.classList.remove("done"),(Z=He(this,y))==null||Z.remove();return}U._l10nPromise.get("editor_alt_text_edit_button_label").then(Q=>{D.setAttribute("aria-label",Q)});let W=He(this,y);if(!W){Ct(this,y,W=document.createElement("span")),W.className="tooltip",W.setAttribute("role","tooltip");const Q=W.id=`alt-text-tooltip-${this.id}`;D.setAttribute("aria-describedby",Q);const Y=100;D.addEventListener("mouseenter",()=>{Ct(this,f,setTimeout(()=>{Ct(this,f,null),He(this,y).classList.add("show"),this._uiManager._eventBus.dispatch("reporttelemetry",{source:this,details:{type:"editing",subtype:this.editorType,data:{action:"alt_text_tooltip"}}})},Y))}),D.addEventListener("mouseleave",()=>{var J;clearTimeout(He(this,f)),Ct(this,f,null),(J=He(this,y))==null||J.classList.remove("show")})}D.classList.add("done"),W.innerText=He(this,g)?await U._l10nPromise.get("editor_alt_text_decorative_tooltip"):He(this,b),W.parentNode||D.append(W)},Pu=function(D){if(!this._isDraggable)return;const W=this._uiManager.isSelected(this);this._uiManager.setUpDragSession();let Z,Q;W&&(Z={passive:!0,capture:!0},Q=J=>{const[ee,re]=this.screenToPageTranslation(J.movementX,J.movementY);this._uiManager.dragSelectedEditors(ee,re)},window.addEventListener("pointermove",Q,Z));const Y=()=>{if(window.removeEventListener("pointerup",Y),window.removeEventListener("blur",Y),W&&window.removeEventListener("pointermove",Q,Z),Ct(this,_,!1),!this._uiManager.endDragSession()){const{isMac:J}=d.FeatureTest.platform;D.ctrlKey&&!J||D.shiftKey||D.metaKey&&J?this.parent.toggleSelected(this):this.parent.setSelected(this)}};window.addEventListener("pointerup",Y),window.addEventListener("blur",Y)},bt(U,M),yr(U,"_borderLineWidth",-1),yr(U,"_colorManager",new u.ColorManager),yr(U,"_zIndex",1),yr(U,"SMALL_EDITOR_SIZE",0);let v=U;s.AnnotationEditor=v;class A extends v{constructor(D){super(D),this.annotationElementId=D.annotationElementId,this.deleted=!0}serialize(){return{id:this.annotationElementId,deleted:!0,pageIndex:this.pageIndex}}}},(a,s,c)=>{var m,C,S,w,_,Xs,P,E,R,T,B,Tu,O,H,j,q,L,F,U,N,D,W,Z,Q,Y,J,ee,re,ae,V,K,te,ie,ce,me,we,ve,ge,ue,se,oe,de,le,xe,Ce,$e,Se,Ru,Zs,Js,mo,el,tl,_n,pi,Bu,Mu,rl,gi,nl;Object.defineProperty(s,"__esModule",{value:!0}),s.KeyboardManager=s.CommandManager=s.ColorManager=s.AnnotationEditorUIManager=void 0,s.bindEvents=p,s.opacityToHex=v;var u=c(1),d=c(6);function p(Te,ke,De){for(const Re of De)ke.addEventListener(Re,Te[Re].bind(Te))}function v(Te){return Math.round(Math.min(255,Math.max(1,255*Te))).toString(16).padStart(2,"0")}class A{constructor(){bt(this,m,0)}getId(){return`${u.AnnotationEditorPrefix}${hi(this,m)._++}`}}m=new WeakMap;const $=class ${constructor(){bt(this,_);bt(this,C,(0,u.getUuid)());bt(this,S,0);bt(this,w,null)}static get _isSVGFittingCanvas(){const ke='data:image/svg+xml;charset=UTF-8,<svg viewBox="0 0 1 1" width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="1" height="1" style="fill:red;"/></svg>',Re=new OffscreenCanvas(1,3).getContext("2d"),Ge=new Image;Ge.src=ke;const Ve=Ge.decode().then(()=>(Re.drawImage(Ge,0,0,1,1,0,0,1,3),new Uint32Array(Re.getImageData(0,0,1,1).data.buffer)[0]===0));return(0,u.shadow)(this,"_isSVGFittingCanvas",Ve)}async getFromFile(ke){const{lastModified:De,name:Re,size:Ge,type:Ve}=ke;return it(this,_,Xs).call(this,`${De}_${Re}_${Ge}_${Ve}`,ke)}async getFromUrl(ke){return it(this,_,Xs).call(this,ke,ke)}async getFromId(ke){He(this,w)||Ct(this,w,new Map);const De=He(this,w).get(ke);return De?De.bitmap?(De.refCounter+=1,De):De.file?this.getFromFile(De.file):this.getFromUrl(De.url):null}getSvgUrl(ke){const De=He(this,w).get(ke);return De!=null&&De.isSvg?De.svgUrl:null}deleteId(ke){He(this,w)||Ct(this,w,new Map);const De=He(this,w).get(ke);De&&(De.refCounter-=1,De.refCounter===0&&(De.bitmap=null))}isValidId(ke){return ke.startsWith(`image_${He(this,C)}_`)}};C=new WeakMap,S=new WeakMap,w=new WeakMap,_=new WeakSet,Xs=async function(ke,De){He(this,w)||Ct(this,w,new Map);let Re=He(this,w).get(ke);if(Re===null)return null;if(Re!=null&&Re.bitmap)return Re.refCounter+=1,Re;try{Re||(Re={bitmap:null,id:`image_${He(this,C)}_${hi(this,S)._++}`,refCounter:0,isSvg:!1});let Ge;if(typeof De=="string"){Re.url=De;const Ve=await fetch(De);if(!Ve.ok)throw new Error(Ve.statusText);Ge=await Ve.blob()}else Ge=Re.file=De;if(Ge.type==="image/svg+xml"){const Ve=$._isSVGFittingCanvas,Xe=new FileReader,We=new Image,ze=new Promise((Qe,et)=>{We.onload=()=>{Re.bitmap=We,Re.isSvg=!0,Qe()},Xe.onload=async()=>{const Ze=Re.svgUrl=Xe.result;We.src=await Ve?`${Ze}#svgView(preserveAspectRatio(none))`:Ze},We.onerror=Xe.onerror=et});Xe.readAsDataURL(Ge),await ze}else Re.bitmap=await createImageBitmap(Ge);Re.refCounter=1}catch(Ge){console.error(Ge),Re=null}return He(this,w).set(ke,Re),Re&&He(this,w).set(Re.id,Re),Re};let b=$;class g{constructor(ke=128){bt(this,P,[]);bt(this,E,!1);bt(this,R);bt(this,T,-1);Ct(this,R,ke)}add({cmd:ke,undo:De,mustExec:Re,type:Ge=NaN,overwriteIfSameType:Ve=!1,keepUndo:Xe=!1}){if(Re&&ke(),He(this,E))return;const We={cmd:ke,undo:De,type:Ge};if(He(this,T)===-1){He(this,P).length>0&&(He(this,P).length=0),Ct(this,T,0),He(this,P).push(We);return}if(Ve&&He(this,P)[He(this,T)].type===Ge){Xe&&(We.undo=He(this,P)[He(this,T)].undo),He(this,P)[He(this,T)]=We;return}const ze=He(this,T)+1;ze===He(this,R)?He(this,P).splice(0,1):(Ct(this,T,ze),ze<He(this,P).length&&He(this,P).splice(ze)),He(this,P).push(We)}undo(){He(this,T)!==-1&&(Ct(this,E,!0),He(this,P)[He(this,T)].undo(),Ct(this,E,!1),Ct(this,T,He(this,T)-1))}redo(){He(this,T)<He(this,P).length-1&&(Ct(this,T,He(this,T)+1),Ct(this,E,!0),He(this,P)[He(this,T)].cmd(),Ct(this,E,!1))}hasSomethingToUndo(){return He(this,T)!==-1}hasSomethingToRedo(){return He(this,T)<He(this,P).length-1}destroy(){Ct(this,P,null)}}P=new WeakMap,E=new WeakMap,R=new WeakMap,T=new WeakMap,s.CommandManager=g;class x{constructor(ke){bt(this,B);this.buffer=[],this.callbacks=new Map,this.allKeys=new Set;const{isMac:De}=u.FeatureTest.platform;for(const[Re,Ge,Ve={}]of ke)for(const Xe of Re){const We=Xe.startsWith("mac+");De&&We?(this.callbacks.set(Xe.slice(4),{callback:Ge,options:Ve}),this.allKeys.add(Xe.split("+").at(-1))):!De&&!We&&(this.callbacks.set(Xe,{callback:Ge,options:Ve}),this.allKeys.add(Xe.split("+").at(-1)))}}exec(ke,De){if(!this.allKeys.has(De.key))return;const Re=this.callbacks.get(it(this,B,Tu).call(this,De));if(!Re)return;const{callback:Ge,options:{bubbles:Ve=!1,args:Xe=[],checker:We=null}}=Re;We&&!We(ke,De)||(Ge.bind(ke,...Xe)(),Ve||(De.stopPropagation(),De.preventDefault()))}}B=new WeakSet,Tu=function(ke){ke.altKey&&this.buffer.push("alt"),ke.ctrlKey&&this.buffer.push("ctrl"),ke.metaKey&&this.buffer.push("meta"),ke.shiftKey&&this.buffer.push("shift"),this.buffer.push(ke.key);const De=this.buffer.join("+");return this.buffer.length=0,De},s.KeyboardManager=x;const k=class k{get _colors(){const ke=new Map([["CanvasText",null],["Canvas",null]]);return(0,d.getColorValues)(ke),(0,u.shadow)(this,"_colors",ke)}convert(ke){const De=(0,d.getRGB)(ke);if(!window.matchMedia("(forced-colors: active)").matches)return De;for(const[Re,Ge]of this._colors)if(Ge.every((Ve,Xe)=>Ve===De[Xe]))return k._colorsMapping.get(Re);return De}getHexCode(ke){const De=this._colors.get(ke);return De?u.Util.makeHexColor(...De):ke}};yr(k,"_colorsMapping",new Map([["CanvasText",[0,0,0]],["Canvas",[255,255,255]]]));let y=k;s.ColorManager=y;const Ye=class Ye{constructor(ke,De,Re,Ge,Ve,Xe){bt(this,Se);bt(this,O,null);bt(this,H,new Map);bt(this,j,new Map);bt(this,q,null);bt(this,L,null);bt(this,F,new g);bt(this,U,0);bt(this,N,new Set);bt(this,D,null);bt(this,W,null);bt(this,Z,new Set);bt(this,Q,null);bt(this,Y,new A);bt(this,J,!1);bt(this,ee,!1);bt(this,re,null);bt(this,ae,u.AnnotationEditorType.NONE);bt(this,V,new Set);bt(this,K,null);bt(this,te,this.blur.bind(this));bt(this,ie,this.focus.bind(this));bt(this,ce,this.copy.bind(this));bt(this,me,this.cut.bind(this));bt(this,we,this.paste.bind(this));bt(this,ve,this.keydown.bind(this));bt(this,ge,this.onEditingAction.bind(this));bt(this,ue,this.onPageChanging.bind(this));bt(this,se,this.onScaleChanging.bind(this));bt(this,oe,this.onRotationChanging.bind(this));bt(this,de,{isEditing:!1,isEmpty:!0,hasSomethingToUndo:!1,hasSomethingToRedo:!1,hasSelectedEditor:!1});bt(this,le,[0,0]);bt(this,xe,null);bt(this,Ce,null);bt(this,$e,null);Ct(this,Ce,ke),Ct(this,$e,De),Ct(this,q,Re),this._eventBus=Ge,this._eventBus._on("editingaction",He(this,ge)),this._eventBus._on("pagechanging",He(this,ue)),this._eventBus._on("scalechanging",He(this,se)),this._eventBus._on("rotationchanging",He(this,oe)),Ct(this,L,Ve.annotationStorage),Ct(this,Q,Ve.filterFactory),Ct(this,K,Xe),this.viewParameters={realScale:d.PixelsPerInch.PDF_TO_CSS_UNITS,rotation:0}}static get _keyboardManager(){const ke=Ye.prototype,De=Ve=>{const{activeElement:Xe}=document;return Xe&&He(Ve,Ce).contains(Xe)&&Ve.hasSomethingToControl()},Re=this.TRANSLATE_SMALL,Ge=this.TRANSLATE_BIG;return(0,u.shadow)(this,"_keyboardManager",new x([[["ctrl+a","mac+meta+a"],ke.selectAll],[["ctrl+z","mac+meta+z"],ke.undo],[["ctrl+y","ctrl+shift+z","mac+meta+shift+z","ctrl+shift+Z","mac+meta+shift+Z"],ke.redo],[["Backspace","alt+Backspace","ctrl+Backspace","shift+Backspace","mac+Backspace","mac+alt+Backspace","mac+ctrl+Backspace","Delete","ctrl+Delete","shift+Delete","mac+Delete"],ke.delete],[["Escape","mac+Escape"],ke.unselectAll],[["ArrowLeft","mac+ArrowLeft"],ke.translateSelectedEditors,{args:[-Re,0],checker:De}],[["ctrl+ArrowLeft","mac+shift+ArrowLeft"],ke.translateSelectedEditors,{args:[-Ge,0],checker:De}],[["ArrowRight","mac+ArrowRight"],ke.translateSelectedEditors,{args:[Re,0],checker:De}],[["ctrl+ArrowRight","mac+shift+ArrowRight"],ke.translateSelectedEditors,{args:[Ge,0],checker:De}],[["ArrowUp","mac+ArrowUp"],ke.translateSelectedEditors,{args:[0,-Re],checker:De}],[["ctrl+ArrowUp","mac+shift+ArrowUp"],ke.translateSelectedEditors,{args:[0,-Ge],checker:De}],[["ArrowDown","mac+ArrowDown"],ke.translateSelectedEditors,{args:[0,Re],checker:De}],[["ctrl+ArrowDown","mac+shift+ArrowDown"],ke.translateSelectedEditors,{args:[0,Ge],checker:De}]]))}destroy(){it(this,Se,mo).call(this),it(this,Se,Zs).call(this),this._eventBus._off("editingaction",He(this,ge)),this._eventBus._off("pagechanging",He(this,ue)),this._eventBus._off("scalechanging",He(this,se)),this._eventBus._off("rotationchanging",He(this,oe));for(const ke of He(this,j).values())ke.destroy();He(this,j).clear(),He(this,H).clear(),He(this,Z).clear(),Ct(this,O,null),He(this,V).clear(),He(this,F).destroy(),He(this,q).destroy()}get hcmFilter(){return(0,u.shadow)(this,"hcmFilter",He(this,K)?He(this,Q).addHCMFilter(He(this,K).foreground,He(this,K).background):"none")}get direction(){return(0,u.shadow)(this,"direction",getComputedStyle(He(this,Ce)).direction)}editAltText(ke){var De;(De=He(this,q))==null||De.editAltText(this,ke)}onPageChanging({pageNumber:ke}){Ct(this,U,ke-1)}focusMainContainer(){He(this,Ce).focus()}findParent(ke,De){for(const Re of He(this,j).values()){const{x:Ge,y:Ve,width:Xe,height:We}=Re.div.getBoundingClientRect();if(ke>=Ge&&ke<=Ge+Xe&&De>=Ve&&De<=Ve+We)return Re}return null}disableUserSelect(ke=!1){He(this,$e).classList.toggle("noUserSelect",ke)}addShouldRescale(ke){He(this,Z).add(ke)}removeShouldRescale(ke){He(this,Z).delete(ke)}onScaleChanging({scale:ke}){this.commitOrRemove(),this.viewParameters.realScale=ke*d.PixelsPerInch.PDF_TO_CSS_UNITS;for(const De of He(this,Z))De.onScaleChanging()}onRotationChanging({pagesRotation:ke}){this.commitOrRemove(),this.viewParameters.rotation=ke}addToAnnotationStorage(ke){!ke.isEmpty()&&He(this,L)&&!He(this,L).has(ke.id)&&He(this,L).setValue(ke.id,ke)}blur(){if(!this.hasSelection)return;const{activeElement:ke}=document;for(const De of He(this,V))if(De.div.contains(ke)){Ct(this,re,[De,ke]),De._focusEventsAllowed=!1;break}}focus(){if(!He(this,re))return;const[ke,De]=He(this,re);Ct(this,re,null),De.addEventListener("focusin",()=>{ke._focusEventsAllowed=!0},{once:!0}),De.focus()}addEditListeners(){it(this,Se,Js).call(this),it(this,Se,el).call(this)}removeEditListeners(){it(this,Se,mo).call(this),it(this,Se,tl).call(this)}copy(ke){var Re;if(ke.preventDefault(),(Re=He(this,O))==null||Re.commitOrRemove(),!this.hasSelection)return;const De=[];for(const Ge of He(this,V)){const Ve=Ge.serialize(!0);Ve&&De.push(Ve)}De.length!==0&&ke.clipboardData.setData("application/pdfjs",JSON.stringify(De))}cut(ke){this.copy(ke),this.delete()}paste(ke){ke.preventDefault();const{clipboardData:De}=ke;for(const Ve of De.items)for(const Xe of He(this,W))if(Xe.isHandlingMimeForPasting(Ve.type)){Xe.paste(Ve,this.currentLayer);return}let Re=De.getData("application/pdfjs");if(!Re)return;try{Re=JSON.parse(Re)}catch(Ve){(0,u.warn)(`paste: "${Ve.message}".`);return}if(!Array.isArray(Re))return;this.unselectAll();const Ge=this.currentLayer;try{const Ve=[];for(const ze of Re){const Qe=Ge.deserialize(ze);if(!Qe)return;Ve.push(Qe)}const Xe=()=>{for(const ze of Ve)it(this,Se,rl).call(this,ze);it(this,Se,nl).call(this,Ve)},We=()=>{for(const ze of Ve)ze.remove()};this.addCommands({cmd:Xe,undo:We,mustExec:!0})}catch(Ve){(0,u.warn)(`paste: "${Ve.message}".`)}}keydown(ke){var De;(De=this.getActive())!=null&&De.shouldGetKeyboardEvents()||Ye._keyboardManager.exec(this,ke)}onEditingAction(ke){["undo","redo","delete","selectAll"].includes(ke.name)&&this[ke.name]()}setEditingState(ke){ke?(it(this,Se,Ru).call(this),it(this,Se,Js).call(this),it(this,Se,el).call(this),it(this,Se,_n).call(this,{isEditing:He(this,ae)!==u.AnnotationEditorType.NONE,isEmpty:it(this,Se,gi).call(this),hasSomethingToUndo:He(this,F).hasSomethingToUndo(),hasSomethingToRedo:He(this,F).hasSomethingToRedo(),hasSelectedEditor:!1})):(it(this,Se,Zs).call(this),it(this,Se,mo).call(this),it(this,Se,tl).call(this),it(this,Se,_n).call(this,{isEditing:!1}),this.disableUserSelect(!1))}registerEditorTypes(ke){if(!He(this,W)){Ct(this,W,ke);for(const De of He(this,W))it(this,Se,pi).call(this,De.defaultPropertiesToUpdate)}}getId(){return He(this,Y).getId()}get currentLayer(){return He(this,j).get(He(this,U))}getLayer(ke){return He(this,j).get(ke)}get currentPageIndex(){return He(this,U)}addLayer(ke){He(this,j).set(ke.pageIndex,ke),He(this,J)?ke.enable():ke.disable()}removeLayer(ke){He(this,j).delete(ke.pageIndex)}updateMode(ke,De=null){if(He(this,ae)!==ke){if(Ct(this,ae,ke),ke===u.AnnotationEditorType.NONE){this.setEditingState(!1),it(this,Se,Mu).call(this);return}this.setEditingState(!0),it(this,Se,Bu).call(this),this.unselectAll();for(const Re of He(this,j).values())Re.updateMode(ke);if(De){for(const Re of He(this,H).values())if(Re.annotationElementId===De){this.setSelected(Re),Re.enterInEditMode();break}}}}updateToolbar(ke){ke!==He(this,ae)&&this._eventBus.dispatch("switchannotationeditormode",{source:this,mode:ke})}updateParams(ke,De){if(He(this,W)){if(ke===u.AnnotationEditorParamsType.CREATE){this.currentLayer.addNewEditor(ke);return}for(const Re of He(this,V))Re.updateParams(ke,De);for(const Re of He(this,W))Re.updateDefaultParams(ke,De)}}enableWaiting(ke=!1){if(He(this,ee)!==ke){Ct(this,ee,ke);for(const De of He(this,j).values())ke?De.disableClick():De.enableClick(),De.div.classList.toggle("waiting",ke)}}getEditors(ke){const De=[];for(const Re of He(this,H).values())Re.pageIndex===ke&&De.push(Re);return De}getEditor(ke){return He(this,H).get(ke)}addEditor(ke){He(this,H).set(ke.id,ke)}removeEditor(ke){var De;He(this,H).delete(ke.id),this.unselect(ke),(!ke.annotationElementId||!He(this,N).has(ke.annotationElementId))&&((De=He(this,L))==null||De.remove(ke.id))}addDeletedAnnotationElement(ke){He(this,N).add(ke.annotationElementId),ke.deleted=!0}isDeletedAnnotationElement(ke){return He(this,N).has(ke)}removeDeletedAnnotationElement(ke){He(this,N).delete(ke.annotationElementId),ke.deleted=!1}setActiveEditor(ke){He(this,O)!==ke&&(Ct(this,O,ke),ke&&it(this,Se,pi).call(this,ke.propertiesToUpdate))}toggleSelected(ke){if(He(this,V).has(ke)){He(this,V).delete(ke),ke.unselect(),it(this,Se,_n).call(this,{hasSelectedEditor:this.hasSelection});return}He(this,V).add(ke),ke.select(),it(this,Se,pi).call(this,ke.propertiesToUpdate),it(this,Se,_n).call(this,{hasSelectedEditor:!0})}setSelected(ke){for(const De of He(this,V))De!==ke&&De.unselect();He(this,V).clear(),He(this,V).add(ke),ke.select(),it(this,Se,pi).call(this,ke.propertiesToUpdate),it(this,Se,_n).call(this,{hasSelectedEditor:!0})}isSelected(ke){return He(this,V).has(ke)}unselect(ke){ke.unselect(),He(this,V).delete(ke),it(this,Se,_n).call(this,{hasSelectedEditor:this.hasSelection})}get hasSelection(){return He(this,V).size!==0}undo(){He(this,F).undo(),it(this,Se,_n).call(this,{hasSomethingToUndo:He(this,F).hasSomethingToUndo(),hasSomethingToRedo:!0,isEmpty:it(this,Se,gi).call(this)})}redo(){He(this,F).redo(),it(this,Se,_n).call(this,{hasSomethingToUndo:!0,hasSomethingToRedo:He(this,F).hasSomethingToRedo(),isEmpty:it(this,Se,gi).call(this)})}addCommands(ke){He(this,F).add(ke),it(this,Se,_n).call(this,{hasSomethingToUndo:!0,hasSomethingToRedo:!1,isEmpty:it(this,Se,gi).call(this)})}delete(){if(this.commitOrRemove(),!this.hasSelection)return;const ke=[...He(this,V)],De=()=>{for(const Ge of ke)Ge.remove()},Re=()=>{for(const Ge of ke)it(this,Se,rl).call(this,Ge)};this.addCommands({cmd:De,undo:Re,mustExec:!0})}commitOrRemove(){var ke;(ke=He(this,O))==null||ke.commitOrRemove()}hasSomethingToControl(){return He(this,O)||this.hasSelection}selectAll(){for(const ke of He(this,V))ke.commit();it(this,Se,nl).call(this,He(this,H).values())}unselectAll(){if(He(this,O)){He(this,O).commitOrRemove();return}if(this.hasSelection){for(const ke of He(this,V))ke.unselect();He(this,V).clear(),it(this,Se,_n).call(this,{hasSelectedEditor:!1})}}translateSelectedEditors(ke,De,Re=!1){if(Re||this.commitOrRemove(),!this.hasSelection)return;He(this,le)[0]+=ke,He(this,le)[1]+=De;const[Ge,Ve]=He(this,le),Xe=[...He(this,V)],We=1e3;He(this,xe)&&clearTimeout(He(this,xe)),Ct(this,xe,setTimeout(()=>{Ct(this,xe,null),He(this,le)[0]=He(this,le)[1]=0,this.addCommands({cmd:()=>{for(const ze of Xe)He(this,H).has(ze.id)&&ze.translateInPage(Ge,Ve)},undo:()=>{for(const ze of Xe)He(this,H).has(ze.id)&&ze.translateInPage(-Ge,-Ve)},mustExec:!1})},We));for(const ze of Xe)ze.translateInPage(ke,De)}setUpDragSession(){if(this.hasSelection){this.disableUserSelect(!0),Ct(this,D,new Map);for(const ke of He(this,V))He(this,D).set(ke,{savedX:ke.x,savedY:ke.y,savedPageIndex:ke.pageIndex,newX:0,newY:0,newPageIndex:-1})}}endDragSession(){if(!He(this,D))return!1;this.disableUserSelect(!1);const ke=He(this,D);Ct(this,D,null);let De=!1;for(const[{x:Ge,y:Ve,pageIndex:Xe},We]of ke)We.newX=Ge,We.newY=Ve,We.newPageIndex=Xe,De||(De=Ge!==We.savedX||Ve!==We.savedY||Xe!==We.savedPageIndex);if(!De)return!1;const Re=(Ge,Ve,Xe,We)=>{if(He(this,H).has(Ge.id)){const ze=He(this,j).get(We);ze?Ge._setParentAndPosition(ze,Ve,Xe):(Ge.pageIndex=We,Ge.x=Ve,Ge.y=Xe)}};return this.addCommands({cmd:()=>{for(const[Ge,{newX:Ve,newY:Xe,newPageIndex:We}]of ke)Re(Ge,Ve,Xe,We)},undo:()=>{for(const[Ge,{savedX:Ve,savedY:Xe,savedPageIndex:We}]of ke)Re(Ge,Ve,Xe,We)},mustExec:!0}),!0}dragSelectedEditors(ke,De){if(He(this,D))for(const Re of He(this,D).keys())Re.drag(ke,De)}rebuild(ke){if(ke.parent===null){const De=this.getLayer(ke.pageIndex);De?(De.changeParent(ke),De.addOrRebuild(ke)):(this.addEditor(ke),this.addToAnnotationStorage(ke),ke.rebuild())}else ke.parent.addOrRebuild(ke)}isActive(ke){return He(this,O)===ke}getActive(){return He(this,O)}getMode(){return He(this,ae)}get imageManager(){return(0,u.shadow)(this,"imageManager",new b)}};O=new WeakMap,H=new WeakMap,j=new WeakMap,q=new WeakMap,L=new WeakMap,F=new WeakMap,U=new WeakMap,N=new WeakMap,D=new WeakMap,W=new WeakMap,Z=new WeakMap,Q=new WeakMap,Y=new WeakMap,J=new WeakMap,ee=new WeakMap,re=new WeakMap,ae=new WeakMap,V=new WeakMap,K=new WeakMap,te=new WeakMap,ie=new WeakMap,ce=new WeakMap,me=new WeakMap,we=new WeakMap,ve=new WeakMap,ge=new WeakMap,ue=new WeakMap,se=new WeakMap,oe=new WeakMap,de=new WeakMap,le=new WeakMap,xe=new WeakMap,Ce=new WeakMap,$e=new WeakMap,Se=new WeakSet,Ru=function(){window.addEventListener("focus",He(this,ie)),window.addEventListener("blur",He(this,te))},Zs=function(){window.removeEventListener("focus",He(this,ie)),window.removeEventListener("blur",He(this,te))},Js=function(){window.addEventListener("keydown",He(this,ve),{capture:!0})},mo=function(){window.removeEventListener("keydown",He(this,ve),{capture:!0})},el=function(){document.addEventListener("copy",He(this,ce)),document.addEventListener("cut",He(this,me)),document.addEventListener("paste",He(this,we))},tl=function(){document.removeEventListener("copy",He(this,ce)),document.removeEventListener("cut",He(this,me)),document.removeEventListener("paste",He(this,we))},_n=function(ke){Object.entries(ke).some(([Re,Ge])=>He(this,de)[Re]!==Ge)&&this._eventBus.dispatch("annotationeditorstateschanged",{source:this,details:Object.assign(He(this,de),ke)})},pi=function(ke){this._eventBus.dispatch("annotationeditorparamschanged",{source:this,details:ke})},Bu=function(){if(!He(this,J)){Ct(this,J,!0);for(const ke of He(this,j).values())ke.enable()}},Mu=function(){if(this.unselectAll(),He(this,J)){Ct(this,J,!1);for(const ke of He(this,j).values())ke.disable()}},rl=function(ke){const De=He(this,j).get(ke.pageIndex);De?De.addOrRebuild(ke):this.addEditor(ke)},gi=function(){if(He(this,H).size===0)return!0;if(He(this,H).size===1)for(const ke of He(this,H).values())return ke.isEmpty();return!1},nl=function(ke){He(this,V).clear();for(const De of ke)De.isEmpty()||(He(this,V).add(De),De.select());it(this,Se,_n).call(this,{hasSelectedEditor:!0})},yr(Ye,"TRANSLATE_SMALL",1),yr(Ye,"TRANSLATE_BIG",10);let f=Ye;s.AnnotationEditorUIManager=f},(a,s,c)=>{var U,N,D,W,Z,Q,Y,J,ee,re,ae,V,Fa,Na,al,Ao,vo,mi,Ai;Object.defineProperty(s,"__esModule",{value:!0}),s.StatTimer=s.RenderingCancelledException=s.PixelsPerInch=s.PageViewport=s.PDFDateString=s.DOMStandardFontDataFactory=s.DOMSVGFactory=s.DOMFilterFactory=s.DOMCanvasFactory=s.DOMCMapReaderFactory=void 0,s.deprecated=T,s.getColorValues=H,s.getCurrentTransform=j,s.getCurrentTransformInverse=q,s.getFilenameFromUrl=_,s.getPdfFilenameFromUrl=I,s.getRGB=O,s.getXfaPageViewport=k,s.isDataScheme=S,s.isPdfFile=w,s.isValidFetchUrl=P,s.loadScript=R,s.noContextMenu=E,s.setLayerDimensions=L;var u=c(7),d=c(1);const p="http://www.w3.org/2000/svg",F=class F{};yr(F,"CSS",96),yr(F,"PDF",72),yr(F,"PDF_TO_CSS_UNITS",F.CSS/F.PDF);let v=F;s.PixelsPerInch=v;class A extends u.BaseFilterFactory{constructor({docId:se,ownerDocument:oe=globalThis.document}={}){super();bt(this,V);bt(this,U);bt(this,N);bt(this,D);bt(this,W);bt(this,Z);bt(this,Q);bt(this,Y);bt(this,J);bt(this,ee);bt(this,re);bt(this,ae,0);Ct(this,D,se),Ct(this,W,oe)}addFilter(se){if(!se)return"none";let oe=He(this,V,Fa).get(se);if(oe)return oe;let de,le,xe,Ce;if(se.length===1){const Ae=se[0],pe=new Array(256);for(let he=0;he<256;he++)pe[he]=Ae[he]/255;Ce=de=le=xe=pe.join(",")}else{const[Ae,pe,he]=se,Ie=new Array(256),ye=new Array(256),Pe=new Array(256);for(let Ne=0;Ne<256;Ne++)Ie[Ne]=Ae[Ne]/255,ye[Ne]=pe[Ne]/255,Pe[Ne]=he[Ne]/255;de=Ie.join(","),le=ye.join(","),xe=Pe.join(","),Ce=`${de}${le}${xe}`}if(oe=He(this,V,Fa).get(Ce),oe)return He(this,V,Fa).set(se,oe),oe;const $e=`g_${He(this,D)}_transfer_map_${hi(this,ae)._++}`,Se=`url(#${$e})`;He(this,V,Fa).set(se,Se),He(this,V,Fa).set(Ce,Se);const Ee=it(this,V,Ao).call(this,$e);return it(this,V,mi).call(this,de,le,xe,Ee),Se}addHCMFilter(se,oe){var pe;const de=`${se}-${oe}`;if(He(this,Q)===de)return He(this,Y);if(Ct(this,Q,de),Ct(this,Y,"none"),(pe=He(this,Z))==null||pe.remove(),!se||!oe)return He(this,Y);const le=it(this,V,Ai).call(this,se);se=d.Util.makeHexColor(...le);const xe=it(this,V,Ai).call(this,oe);if(oe=d.Util.makeHexColor(...xe),He(this,V,Na).style.color="",se==="#000000"&&oe==="#ffffff"||se===oe)return He(this,Y);const Ce=new Array(256);for(let he=0;he<=255;he++){const Ie=he/255;Ce[he]=Ie<=.03928?Ie/12.92:((Ie+.055)/1.055)**2.4}const $e=Ce.join(","),Se=`g_${He(this,D)}_hcm_filter`,Ee=Ct(this,J,it(this,V,Ao).call(this,Se));it(this,V,mi).call(this,$e,$e,$e,Ee),it(this,V,al).call(this,Ee);const Ae=(he,Ie)=>{const ye=le[he]/255,Pe=xe[he]/255,Ne=new Array(Ie+1);for(let Le=0;Le<=Ie;Le++)Ne[Le]=ye+Le/Ie*(Pe-ye);return Ne.join(",")};return it(this,V,mi).call(this,Ae(0,5),Ae(1,5),Ae(2,5),Ee),Ct(this,Y,`url(#${Se})`),He(this,Y)}addHighlightHCMFilter(se,oe,de,le){var Pe;const xe=`${se}-${oe}-${de}-${le}`;if(He(this,ee)===xe)return He(this,re);if(Ct(this,ee,xe),Ct(this,re,"none"),(Pe=He(this,J))==null||Pe.remove(),!se||!oe)return He(this,re);const[Ce,$e]=[se,oe].map(it(this,V,Ai).bind(this));let Se=Math.round(.2126*Ce[0]+.7152*Ce[1]+.0722*Ce[2]),Ee=Math.round(.2126*$e[0]+.7152*$e[1]+.0722*$e[2]),[Ae,pe]=[de,le].map(it(this,V,Ai).bind(this));Ee<Se&&([Se,Ee,Ae,pe]=[Ee,Se,pe,Ae]),He(this,V,Na).style.color="";const he=(Ne,Le,Oe)=>{const Fe=new Array(256),_e=(Ee-Se)/Oe,je=Ne/255,Ye=(Le-Ne)/(255*Oe);let Te=0;for(let ke=0;ke<=Oe;ke++){const De=Math.round(Se+ke*_e),Re=je+ke*Ye;for(let Ge=Te;Ge<=De;Ge++)Fe[Ge]=Re;Te=De+1}for(let ke=Te;ke<256;ke++)Fe[ke]=Fe[Te-1];return Fe.join(",")},Ie=`g_${He(this,D)}_hcm_highlight_filter`,ye=Ct(this,J,it(this,V,Ao).call(this,Ie));return it(this,V,al).call(this,ye),it(this,V,mi).call(this,he(Ae[0],pe[0],5),he(Ae[1],pe[1],5),he(Ae[2],pe[2],5),ye),Ct(this,re,`url(#${Ie})`),He(this,re)}destroy(se=!1){se&&(He(this,Y)||He(this,re))||(He(this,N)&&(He(this,N).parentNode.parentNode.remove(),Ct(this,N,null)),He(this,U)&&(He(this,U).clear(),Ct(this,U,null)),Ct(this,ae,0))}}U=new WeakMap,N=new WeakMap,D=new WeakMap,W=new WeakMap,Z=new WeakMap,Q=new WeakMap,Y=new WeakMap,J=new WeakMap,ee=new WeakMap,re=new WeakMap,ae=new WeakMap,V=new WeakSet,Fa=function(){return He(this,U)||Ct(this,U,new Map)},Na=function(){if(!He(this,N)){const se=He(this,W).createElement("div"),{style:oe}=se;oe.visibility="hidden",oe.contain="strict",oe.width=oe.height=0,oe.position="absolute",oe.top=oe.left=0,oe.zIndex=-1;const de=He(this,W).createElementNS(p,"svg");de.setAttribute("width",0),de.setAttribute("height",0),Ct(this,N,He(this,W).createElementNS(p,"defs")),se.append(de),de.append(He(this,N)),He(this,W).body.append(se)}return He(this,N)},al=function(se){const oe=He(this,W).createElementNS(p,"feColorMatrix");oe.setAttribute("type","matrix"),oe.setAttribute("values","0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0 0 0 1 0"),se.append(oe)},Ao=function(se){const oe=He(this,W).createElementNS(p,"filter");return oe.setAttribute("color-interpolation-filters","sRGB"),oe.setAttribute("id",se),He(this,V,Na).append(oe),oe},vo=function(se,oe,de){const le=He(this,W).createElementNS(p,oe);le.setAttribute("type","discrete"),le.setAttribute("tableValues",de),se.append(le)},mi=function(se,oe,de,le){const xe=He(this,W).createElementNS(p,"feComponentTransfer");le.append(xe),it(this,V,vo).call(this,xe,"feFuncR",se),it(this,V,vo).call(this,xe,"feFuncG",oe),it(this,V,vo).call(this,xe,"feFuncB",de)},Ai=function(se){return He(this,V,Na).style.color=se,O(getComputedStyle(He(this,V,Na)).getPropertyValue("color"))},s.DOMFilterFactory=A;class b extends u.BaseCanvasFactory{constructor({ownerDocument:ue=globalThis.document}={}){super(),this._document=ue}_createCanvas(ue,se){const oe=this._document.createElement("canvas");return oe.width=ue,oe.height=se,oe}}s.DOMCanvasFactory=b;async function g(ge,ue=!1){if(P(ge,document.baseURI)){const se=await fetch(ge);if(!se.ok)throw new Error(se.statusText);return ue?new Uint8Array(await se.arrayBuffer()):(0,d.stringToBytes)(await se.text())}return new Promise((se,oe)=>{const de=new XMLHttpRequest;de.open("GET",ge,!0),ue&&(de.responseType="arraybuffer"),de.onreadystatechange=()=>{if(de.readyState===XMLHttpRequest.DONE){if(de.status===200||de.status===0){let le;if(ue&&de.response?le=new Uint8Array(de.response):!ue&&de.responseText&&(le=(0,d.stringToBytes)(de.responseText)),le){se(le);return}}oe(new Error(de.statusText))}},de.send(null)})}class x extends u.BaseCMapReaderFactory{_fetchData(ue,se){return g(ue,this.isCompressed).then(oe=>({cMapData:oe,compressionType:se}))}}s.DOMCMapReaderFactory=x;class y extends u.BaseStandardFontDataFactory{_fetchData(ue){return g(ue,!0)}}s.DOMStandardFontDataFactory=y;class f extends u.BaseSVGFactory{_createSVG(ue){return document.createElementNS(p,ue)}}s.DOMSVGFactory=f;class m{constructor({viewBox:ue,scale:se,rotation:oe,offsetX:de=0,offsetY:le=0,dontFlip:xe=!1}){this.viewBox=ue,this.scale=se,this.rotation=oe,this.offsetX=de,this.offsetY=le;const Ce=(ue[2]+ue[0])/2,$e=(ue[3]+ue[1])/2;let Se,Ee,Ae,pe;switch(oe%=360,oe<0&&(oe+=360),oe){case 180:Se=-1,Ee=0,Ae=0,pe=1;break;case 90:Se=0,Ee=1,Ae=1,pe=0;break;case 270:Se=0,Ee=-1,Ae=-1,pe=0;break;case 0:Se=1,Ee=0,Ae=0,pe=-1;break;default:throw new Error("PageViewport: Invalid rotation, must be a multiple of 90 degrees.")}xe&&(Ae=-Ae,pe=-pe);let he,Ie,ye,Pe;Se===0?(he=Math.abs($e-ue[1])*se+de,Ie=Math.abs(Ce-ue[0])*se+le,ye=(ue[3]-ue[1])*se,Pe=(ue[2]-ue[0])*se):(he=Math.abs(Ce-ue[0])*se+de,Ie=Math.abs($e-ue[1])*se+le,ye=(ue[2]-ue[0])*se,Pe=(ue[3]-ue[1])*se),this.transform=[Se*se,Ee*se,Ae*se,pe*se,he-Se*se*Ce-Ae*se*$e,Ie-Ee*se*Ce-pe*se*$e],this.width=ye,this.height=Pe}get rawDims(){const{viewBox:ue}=this;return(0,d.shadow)(this,"rawDims",{pageWidth:ue[2]-ue[0],pageHeight:ue[3]-ue[1],pageX:ue[0],pageY:ue[1]})}clone({scale:ue=this.scale,rotation:se=this.rotation,offsetX:oe=this.offsetX,offsetY:de=this.offsetY,dontFlip:le=!1}={}){return new m({viewBox:this.viewBox.slice(),scale:ue,rotation:se,offsetX:oe,offsetY:de,dontFlip:le})}convertToViewportPoint(ue,se){return d.Util.applyTransform([ue,se],this.transform)}convertToViewportRectangle(ue){const se=d.Util.applyTransform([ue[0],ue[1]],this.transform),oe=d.Util.applyTransform([ue[2],ue[3]],this.transform);return[se[0],se[1],oe[0],oe[1]]}convertToPdfPoint(ue,se){return d.Util.applyInverseTransform([ue,se],this.transform)}}s.PageViewport=m;class C extends d.BaseException{constructor(ue,se=0){super(ue,"RenderingCancelledException"),this.extraDelay=se}}s.RenderingCancelledException=C;function S(ge){const ue=ge.length;let se=0;for(;se<ue&&ge[se].trim()==="";)se++;return ge.substring(se,se+5).toLowerCase()==="data:"}function w(ge){return typeof ge=="string"&&/\.pdf$/i.test(ge)}function _(ge,ue=!1){return ue||([ge]=ge.split(/[#?]/,1)),ge.substring(ge.lastIndexOf("/")+1)}function I(ge,ue="document.pdf"){if(typeof ge!="string")return ue;if(S(ge))return(0,d.warn)('getPdfFilenameFromUrl: ignore "data:"-URL for performance reasons.'),ue;const se=/^(?:(?:[^:]+:)?\/\/[^/]+)?([^?#]*)(\?[^#]*)?(#.*)?$/,oe=/[^/?#=]+\.pdf\b(?!.*\.pdf\b)/i,de=se.exec(ge);let le=oe.exec(de[1])||oe.exec(de[2])||oe.exec(de[3]);if(le&&(le=le[0],le.includes("%")))try{le=oe.exec(decodeURIComponent(le))[0]}catch{}return le||ue}class ${constructor(){yr(this,"started",Object.create(null));yr(this,"times",[])}time(ue){ue in this.started&&(0,d.warn)(`Timer is already running for ${ue}`),this.started[ue]=Date.now()}timeEnd(ue){ue in this.started||(0,d.warn)(`Timer has not been started for ${ue}`),this.times.push({name:ue,start:this.started[ue],end:Date.now()}),delete this.started[ue]}toString(){const ue=[];let se=0;for(const{name:oe}of this.times)se=Math.max(oe.length,se);for(const{name:oe,start:de,end:le}of this.times)ue.push(`${oe.padEnd(se)} ${le-de}ms
|
58
|
+
`;case 114:return"\r";case 120:return String.fromCharCode(this.readHexChar(2));case 117:return codePointToString(this.readCodePoint());case 116:return" ";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:this.input.charCodeAt(this.pos)===10&&++this.pos;case 10:return this.options.locations&&(this.lineStart=this.pos,++this.curLine),"";case 56:case 57:if(this.strict&&this.invalidStringToken(this.pos-1,"Invalid escape sequence"),a){var c=this.pos-1;this.invalidStringToken(c,"Invalid escape sequence in template string")}default:if(s>=48&&s<=55){var u=this.input.substr(this.pos-1,3).match(/^[0-7]+/)[0],d=parseInt(u,8);return d>255&&(u=u.slice(0,-1),d=parseInt(u,8)),this.pos+=u.length-1,s=this.input.charCodeAt(this.pos),(u!=="0"||s===56||s===57)&&(this.strict||a)&&this.invalidStringToken(this.pos-1-u.length,a?"Octal literal in template string":"Octal literal in strict mode"),String.fromCharCode(d)}return isNewLine(s)?(this.options.locations&&(this.lineStart=this.pos,++this.curLine),""):String.fromCharCode(s)}},pp.readHexChar=function(a){var s=this.pos,c=this.readInt(16,a);return c===null&&this.invalidStringToken(s,"Bad character escape sequence"),c},pp.readWord1=function(){this.containsEsc=!1;for(var a="",s=!0,c=this.pos,u=this.options.ecmaVersion>=6;this.pos<this.input.length;){var d=this.fullCharCodeAtPos();if(isIdentifierChar(d,u))this.pos+=d<=65535?1:2;else if(d===92){this.containsEsc=!0,a+=this.input.slice(c,this.pos);var p=this.pos;this.input.charCodeAt(++this.pos)!==117&&this.invalidStringToken(this.pos,"Expecting Unicode escape sequence \\uXXXX"),++this.pos;var v=this.readCodePoint();(s?isIdentifierStart:isIdentifierChar)(v,u)||this.invalidStringToken(p,"Invalid Unicode escape"),a+=codePointToString(v),c=this.pos}else break;s=!1}return a+this.input.slice(c,this.pos)},pp.readWord=function(){var a=this.readWord1(),s=types$1.name;return this.keywords.test(a)&&(s=keywords[a]),this.finishToken(s,a)};var version$2="8.14.1";Parser.acorn={Parser,version:version$2,defaultOptions:defaultOptions$1,Position,SourceLocation,getLineInfo,Node,TokenType,tokTypes:types$1,keywordTypes:keywords,TokContext,tokContexts:types$2,isIdentifierChar,isIdentifierStart,Token,isNewLine,lineBreak,lineBreakG,nonASCIIwhitespace};function parseExpressionAt(a,s,c){return Parser.parseExpressionAt(a,s,c)}const expressionCache=new Map,parseDataCache=new Map,parseData=a=>{const s=JSON.stringify(a);if(parseDataCache.has(s))return parseDataCache.get(s);const c=Object.fromEntries(Object.entries(a).map(([u,d])=>{if(typeof d=="string")try{const p=JSON.parse(d);return[u,p]}catch{return[u,d]}return[u,d]}));return parseDataCache.set(s,c),c},padZero=a=>String(a).padStart(2,"0"),formatDate=a=>`${a.getFullYear()}/${padZero(a.getMonth()+1)}/${padZero(a.getDate())}`,formatDateTime=a=>`${formatDate(a)} ${padZero(a.getHours())}:${padZero(a.getMinutes())}`,allowedGlobals={Math,String,Number,Boolean,Array,Object,Date,JSON,isNaN,parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent},validateAST=a=>{switch(a.type){case"Literal":case"Identifier":break;case"BinaryExpression":case"LogicalExpression":{const s=a;validateAST(s.left),validateAST(s.right);break}case"UnaryExpression":{validateAST(a.argument);break}case"ConditionalExpression":{const s=a;validateAST(s.test),validateAST(s.consequent),validateAST(s.alternate);break}case"MemberExpression":{const s=a;if(validateAST(s.object),s.computed)validateAST(s.property);else{const c=s.property.name;if(["constructor","__proto__","prototype"].includes(c))throw new Error("Access to prohibited property");if(typeof c=="string"&&["toLocaleString","valueOf"].includes(c))throw new Error(`Access to prohibited method: ${c}`)}break}case"CallExpression":{const s=a;validateAST(s.callee),s.arguments.forEach(validateAST);break}case"ArrayExpression":{a.elements.forEach(c=>{c&&validateAST(c)});break}case"ObjectExpression":{a.properties.forEach(c=>{const u=c;validateAST(u.key),validateAST(u.value)});break}case"ArrowFunctionExpression":{const s=a;s.params.forEach(c=>{if(c.type!=="Identifier")throw new Error("Only identifier parameters are supported in arrow functions");validateAST(c)}),validateAST(s.body);break}default:throw new Error(`Unsupported syntax in placeholder: ${a.type}`)}},evaluateAST=(a,s)=>{switch(a.type){case"Literal":return a.value;case"Identifier":{const c=a;if(Object.prototype.hasOwnProperty.call(s,c.name))return s[c.name];if(Object.prototype.hasOwnProperty.call(allowedGlobals,c.name))return allowedGlobals[c.name];throw new Error(`Undefined variable: ${c.name}`)}case"BinaryExpression":{const c=a,u=evaluateAST(c.left,s),d=evaluateAST(c.right,s);switch(c.operator){case"+":return u+d;case"-":return u-d;case"*":return u*d;case"/":return u/d;case"%":return u%d;case"**":return u**d;case"==":return u==d;case"!=":return u!=d;case"===":return u===d;case"!==":return u!==d;case"<":return u<d;case">":return u>d;case"<=":return u<=d;case">=":return u>=d;default:throw new Error(`Unsupported operator: ${c.operator}`)}}case"LogicalExpression":{const c=a,u=evaluateAST(c.left,s),d=evaluateAST(c.right,s);switch(c.operator){case"&&":return u&&d;case"||":return u||d;default:throw new Error(`Unsupported operator: ${c.operator}`)}}case"UnaryExpression":{const c=a,u=evaluateAST(c.argument,s);switch(c.operator){case"+":return+u;case"-":return-u;case"!":return!u;default:throw new Error(`Unsupported operator: ${c.operator}`)}}case"ConditionalExpression":{const c=a,u=evaluateAST(c.test,s);return evaluateAST(u?c.consequent:c.alternate,s)}case"MemberExpression":{const c=a,u=evaluateAST(c.object,s);let d;if(c.computed?d=evaluateAST(c.property,s):d=c.property.name,typeof d=="string"||typeof d=="number"){if(typeof d=="string"&&["constructor","__proto__","prototype"].includes(d))throw new Error("Access to prohibited property");return u[d]}else throw new Error("Invalid property access")}case"CallExpression":{const c=a,u=evaluateAST(c.callee,s),d=c.arguments.map(p=>evaluateAST(p,s));if(typeof u=="function")if(c.callee.type==="MemberExpression"){const p=c.callee,v=evaluateAST(p.object,s);if(v!==null&&(typeof v=="object"||typeof v=="number"||typeof v=="string"||typeof v=="boolean"))return u.call(v,...d);throw new Error("Invalid object in member function call")}else return u(...d);else throw new Error("Attempted to call a non-function")}case"ArrowFunctionExpression":{const c=a,u=c.params.map(p=>p.name),d=c.body;return(...p)=>{const v={...s};return u.forEach((A,b)=>{v[A]=p[b]}),evaluateAST(d,v)}}case"ArrayExpression":return a.elements.map(u=>u?evaluateAST(u,s):null);case"ObjectExpression":{const c=a,u={};return c.properties.forEach(d=>{const p=d;let v;if(p.key.type==="Identifier")v=p.key.name;else{const b=evaluateAST(p.key,s);if(typeof b!="string"&&typeof b!="number")throw new Error("Object property keys must be strings or numbers");v=String(b)}const A=evaluateAST(p.value,s);u[v]=A}),u}default:throw new Error(`Unsupported syntax in placeholder: ${a.type}`)}},evaluatePlaceholders=a=>{const{content:s,context:c}=a;let u="",d=0;for(;d<s.length;){const p=s.indexOf("{",d);if(p===-1){u+=s.slice(d);break}u+=s.slice(d,p);let v=1,A=p+1;for(;A<s.length&&v>0;)s[A]==="{"?v++:s[A]==="}"&&v--,A++;if(v===0){const b=s.slice(p+1,A-1).trim();if(expressionCache.has(b)){const g=expressionCache.get(b);try{const x=g(c);u+=String(x)}catch{u+=s.slice(p,A)}}else try{const g=parseExpressionAt(b,0,{ecmaVersion:"latest"});validateAST(g);const x=f=>evaluateAST(g,f);expressionCache.set(b,x);const y=x(c);u+=String(y)}catch{u+=s.slice(p,A)}d=A}else throw new Error("Invalid placeholder")}return u},replacePlaceholders=a=>{const{content:s,variables:c,schemas:u}=a;if(!s||typeof s!="string"||!s.includes("{")||!s.includes("}"))return s;const d=new Date,p=formatDate(d),v=formatDateTime(d),A={...Object.fromEntries(u.flat().map(x=>[x.name,x.readOnly&&x.content||""])),...c},b=parseData(A),g={date:p,dateTime:v,...b};return Object.entries(g).forEach(([x,y])=>{typeof y=="string"&&y.includes("{")&&y.includes("}")&&(g[x]=evaluatePlaceholders({content:y,context:g}))}),evaluatePlaceholders({content:s,context:g})},DEFAULT_LANG="en",DESTROYED_ERR_MSG="[@pdfme/ui] this instance is already destroyed",SELECTABLE_CLASSNAME="selectable",RULER_HEIGHT=30,PAGE_GAP=10,LEFT_SIDEBAR_WIDTH=45,RIGHT_SIDEBAR_WIDTH=400,BACKGROUND_COLOR="rgb(74, 74, 74)",DEFAULT_MAX_ZOOM=2,isff=typeof navigator<"u"?navigator.userAgent.toLowerCase().indexOf("firefox")>0:!1;function addEvent$1(a,s,c,u){a.addEventListener?a.addEventListener(s,c,u):a.attachEvent&&a.attachEvent("on".concat(s),c)}function removeEvent$1(a,s,c,u){a.removeEventListener?a.removeEventListener(s,c,u):a.detachEvent&&a.detachEvent("on".concat(s),c)}function getMods(a,s){const c=s.slice(0,s.length-1);for(let u=0;u<c.length;u++)c[u]=a[c[u].toLowerCase()];return c}function getKeys$1(a){typeof a!="string"&&(a=""),a=a.replace(/\s/g,"");const s=a.split(",");let c=s.lastIndexOf("");for(;c>=0;)s[c-1]+=",",s.splice(c,1),c=s.lastIndexOf("");return s}function compareArray(a,s){const c=a.length>=s.length?a:s,u=a.length>=s.length?s:a;let d=!0;for(let p=0;p<c.length;p++)u.indexOf(c[p])===-1&&(d=!1);return d}const _keyMap={backspace:8,"⌫":8,tab:9,clear:12,enter:13,"↩":13,return:13,esc:27,escape:27,space:32,left:37,up:38,right:39,down:40,del:46,delete:46,ins:45,insert:45,home:36,end:35,pageup:33,pagedown:34,capslock:20,num_0:96,num_1:97,num_2:98,num_3:99,num_4:100,num_5:101,num_6:102,num_7:103,num_8:104,num_9:105,num_multiply:106,num_add:107,num_enter:108,num_subtract:109,num_decimal:110,num_divide:111,"⇪":20,",":188,".":190,"/":191,"`":192,"-":isff?173:189,"=":isff?61:187,";":isff?59:186,"'":222,"[":219,"]":221,"\\":220},_modifier={"⇧":16,shift:16,"⌥":18,alt:18,option:18,"⌃":17,ctrl:17,control:17,"⌘":91,cmd:91,command:91},modifierMap={16:"shiftKey",18:"altKey",17:"ctrlKey",91:"metaKey",shiftKey:16,ctrlKey:17,altKey:18,metaKey:91},_mods={16:!1,18:!1,17:!1,91:!1},_handlers={};for(let a=1;a<20;a++)_keyMap["f".concat(a)]=111+a;let _downKeys=[],winListendFocus=null,_scope="all";const elementEventMap=new Map,code=a=>_keyMap[a.toLowerCase()]||_modifier[a.toLowerCase()]||a.toUpperCase().charCodeAt(0),getKey$3=a=>Object.keys(_keyMap).find(s=>_keyMap[s]===a),getModifier=a=>Object.keys(_modifier).find(s=>_modifier[s]===a);function setScope(a){_scope=a||"all"}function getScope(){return _scope||"all"}function getPressedKeyCodes(){return _downKeys.slice(0)}function getPressedKeyString(){return _downKeys.map(a=>getKey$3(a)||getModifier(a)||String.fromCharCode(a))}function getAllKeyCodes(){const a=[];return Object.keys(_handlers).forEach(s=>{_handlers[s].forEach(c=>{let{key:u,scope:d,mods:p,shortcut:v}=c;a.push({scope:d,shortcut:v,mods:p,keys:u.split("+").map(A=>code(A))})})}),a}function filter$1(a){const s=a.target||a.srcElement,{tagName:c}=s;let u=!0;const d=c==="INPUT"&&!["checkbox","radio","range","button","file","reset","submit","color"].includes(s.type);return(s.isContentEditable||(d||c==="TEXTAREA"||c==="SELECT")&&!s.readOnly)&&(u=!1),u}function isPressed(a){return typeof a=="string"&&(a=code(a)),_downKeys.indexOf(a)!==-1}function deleteScope(a,s){let c,u;a||(a=getScope());for(const d in _handlers)if(Object.prototype.hasOwnProperty.call(_handlers,d))for(c=_handlers[d],u=0;u<c.length;)c[u].scope===a?c.splice(u,1).forEach(v=>{let{element:A}=v;return removeKeyEvent(A)}):u++;getScope()===a&&setScope(s||"all")}function clearModifier(a){let s=a.keyCode||a.which||a.charCode;const c=_downKeys.indexOf(s);if(c>=0&&_downKeys.splice(c,1),a.key&&a.key.toLowerCase()==="meta"&&_downKeys.splice(0,_downKeys.length),(s===93||s===224)&&(s=91),s in _mods){_mods[s]=!1;for(const u in _modifier)_modifier[u]===s&&(hotkeys$1[u]=!1)}}function unbind(a){if(typeof a>"u")Object.keys(_handlers).forEach(d=>{Array.isArray(_handlers[d])&&_handlers[d].forEach(p=>eachUnbind(p)),delete _handlers[d]}),removeKeyEvent(null);else if(Array.isArray(a))a.forEach(d=>{d.key&&eachUnbind(d)});else if(typeof a=="object")a.key&&eachUnbind(a);else if(typeof a=="string"){for(var s=arguments.length,c=new Array(s>1?s-1:0),u=1;u<s;u++)c[u-1]=arguments[u];let[d,p]=c;typeof d=="function"&&(p=d,d=""),eachUnbind({key:a,scope:d,method:p,splitKey:"+"})}}const eachUnbind=a=>{let{key:s,scope:c,method:u,splitKey:d="+"}=a;getKeys$1(s).forEach(v=>{const A=v.split(d),b=A.length,g=A[b-1],x=g==="*"?"*":code(g);if(!_handlers[x])return;c||(c=getScope());const y=b>1?getMods(_modifier,A):[],f=[];_handlers[x]=_handlers[x].filter(m=>{const S=(u?m.method===u:!0)&&m.scope===c&&compareArray(m.mods,y);return S&&f.push(m.element),!S}),f.forEach(m=>removeKeyEvent(m))})};function eventHandler(a,s,c,u){if(s.element!==u)return;let d;if(s.scope===c||s.scope==="all"){d=s.mods.length>0;for(const p in _mods)Object.prototype.hasOwnProperty.call(_mods,p)&&(!_mods[p]&&s.mods.indexOf(+p)>-1||_mods[p]&&s.mods.indexOf(+p)===-1)&&(d=!1);(s.mods.length===0&&!_mods[16]&&!_mods[18]&&!_mods[17]&&!_mods[91]||d||s.shortcut==="*")&&(s.keys=[],s.keys=s.keys.concat(_downKeys),s.method(a,s)===!1&&(a.preventDefault?a.preventDefault():a.returnValue=!1,a.stopPropagation&&a.stopPropagation(),a.cancelBubble&&(a.cancelBubble=!0)))}}function dispatch(a,s){const c=_handlers["*"];let u=a.keyCode||a.which||a.charCode;if(!hotkeys$1.filter.call(this,a))return;if((u===93||u===224)&&(u=91),_downKeys.indexOf(u)===-1&&u!==229&&_downKeys.push(u),["metaKey","ctrlKey","altKey","shiftKey"].forEach(A=>{const b=modifierMap[A];a[A]&&_downKeys.indexOf(b)===-1?_downKeys.push(b):!a[A]&&_downKeys.indexOf(b)>-1?_downKeys.splice(_downKeys.indexOf(b),1):A==="metaKey"&&a[A]&&(_downKeys=_downKeys.filter(g=>g in modifierMap||g===u))}),u in _mods){_mods[u]=!0;for(const A in _modifier)if(Object.prototype.hasOwnProperty.call(_modifier,A)){const b=modifierMap[_modifier[A]];hotkeys$1[A]=a[b]}if(!c)return}for(const A in _mods)Object.prototype.hasOwnProperty.call(_mods,A)&&(_mods[A]=a[modifierMap[A]]);a.getModifierState&&!(a.altKey&&!a.ctrlKey)&&a.getModifierState("AltGraph")&&(_downKeys.indexOf(17)===-1&&_downKeys.push(17),_downKeys.indexOf(18)===-1&&_downKeys.push(18),_mods[17]=!0,_mods[18]=!0);const d=getScope();if(c)for(let A=0;A<c.length;A++)c[A].scope===d&&(a.type==="keydown"&&c[A].keydown||a.type==="keyup"&&c[A].keyup)&&eventHandler(a,c[A],d,s);if(!(u in _handlers))return;const p=_handlers[u],v=p.length;for(let A=0;A<v;A++)if((a.type==="keydown"&&p[A].keydown||a.type==="keyup"&&p[A].keyup)&&p[A].key){const b=p[A],{splitKey:g}=b,x=b.key.split(g),y=[];for(let f=0;f<x.length;f++)y.push(code(x[f]));y.sort().join("")===_downKeys.sort().join("")&&eventHandler(a,b,d,s)}}function hotkeys$1(a,s,c){_downKeys=[];const u=getKeys$1(a);let d=[],p="all",v=document,A=0,b=!1,g=!0,x="+",y=!1,f=!1;for(c===void 0&&typeof s=="function"&&(c=s),Object.prototype.toString.call(s)==="[object Object]"&&(s.scope&&(p=s.scope),s.element&&(v=s.element),s.keyup&&(b=s.keyup),s.keydown!==void 0&&(g=s.keydown),s.capture!==void 0&&(y=s.capture),typeof s.splitKey=="string"&&(x=s.splitKey),s.single===!0&&(f=!0)),typeof s=="string"&&(p=s),f&&unbind(a,p);A<u.length;A++)a=u[A].split(x),d=[],a.length>1&&(d=getMods(_modifier,a)),a=a[a.length-1],a=a==="*"?"*":code(a),a in _handlers||(_handlers[a]=[]),_handlers[a].push({keyup:b,keydown:g,scope:p,mods:d,shortcut:u[A],method:c,key:u[A],splitKey:x,element:v});if(typeof v<"u"&&window){if(!elementEventMap.has(v)){const m=function(){let S=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.event;return dispatch(S,v)},C=function(){let S=arguments.length>0&&arguments[0]!==void 0?arguments[0]:window.event;dispatch(S,v),clearModifier(S)};elementEventMap.set(v,{keydownListener:m,keyupListenr:C,capture:y}),addEvent$1(v,"keydown",m,y),addEvent$1(v,"keyup",C,y)}if(!winListendFocus){const m=()=>{_downKeys=[]};winListendFocus={listener:m,capture:y},addEvent$1(window,"focus",m,y)}}}function trigger(a){let s=arguments.length>1&&arguments[1]!==void 0?arguments[1]:"all";Object.keys(_handlers).forEach(c=>{_handlers[c].filter(d=>d.scope===s&&d.shortcut===a).forEach(d=>{d&&d.method&&d.method()})})}function removeKeyEvent(a){const s=Object.values(_handlers).flat();if(s.findIndex(u=>{let{element:d}=u;return d===a})<0){const{keydownListener:u,keyupListenr:d,capture:p}=elementEventMap.get(a)||{};u&&d&&(removeEvent$1(a,"keyup",d,p),removeEvent$1(a,"keydown",u,p),elementEventMap.delete(a))}if((s.length<=0||elementEventMap.size<=0)&&(Object.keys(elementEventMap).forEach(d=>{const{keydownListener:p,keyupListenr:v,capture:A}=elementEventMap.get(d)||{};p&&v&&(removeEvent$1(d,"keyup",v,A),removeEvent$1(d,"keydown",p,A),elementEventMap.delete(d))}),elementEventMap.clear(),Object.keys(_handlers).forEach(d=>delete _handlers[d]),winListendFocus)){const{listener:d,capture:p}=winListendFocus;removeEvent$1(window,"focus",d,p),winListendFocus=null}}const _api={getPressedKeyString,setScope,getScope,deleteScope,getPressedKeyCodes,getAllKeyCodes,isPressed,filter:filter$1,trigger,unbind,keyMap:_keyMap,modifier:_modifier,modifierMap};for(const a in _api)Object.prototype.hasOwnProperty.call(_api,a)&&(hotkeys$1[a]=_api[a]);if(typeof window<"u"){const a=window.hotkeys;hotkeys$1.noConflict=s=>(s&&window.hotkeys===hotkeys$1&&(window.hotkeys=a),hotkeys$1),window.hotkeys=hotkeys$1}var reactExports=requireReact();const React=getDefaultExportFromCjs(reactExports),React$1=_mergeNamespaces({__proto__:null,default:React},[reactExports]);function commonjsRequire(a){throw new Error('Could not dynamically require "'+a+'". Please configure the dynamicRequireTargets or/and ignoreDynamicRequires option of @rollup/plugin-commonjs appropriately for this require call to work.')}var pdf={exports:{}};const __viteBrowserExternal={},__viteBrowserExternal$1=Object.freeze(Object.defineProperty({__proto__:null,default:__viteBrowserExternal},Symbol.toStringTag,{value:"Module"})),require$$5=getAugmentedNamespace(__viteBrowserExternal$1);var hasRequiredPdf;function requirePdf(){return hasRequiredPdf||(hasRequiredPdf=1,function(module,exports){(function(s,c){module.exports=s.pdfjsLib=c()})(globalThis,()=>(()=>{var __webpack_modules__=[,(a,s)=>{var Le;Object.defineProperty(s,"__esModule",{value:!0}),s.VerbosityLevel=s.Util=s.UnknownErrorException=s.UnexpectedResponseException=s.TextRenderingMode=s.RenderingIntentFlag=s.PromiseCapability=s.PermissionFlag=s.PasswordResponses=s.PasswordException=s.PageActionEventType=s.OPS=s.MissingPDFException=s.MAX_IMAGE_SIZE_TO_CACHE=s.LINE_FACTOR=s.LINE_DESCENT_FACTOR=s.InvalidPDFException=s.ImageKind=s.IDENTITY_MATRIX=s.FormatError=s.FeatureTest=s.FONT_IDENTITY_MATRIX=s.DocumentActionEventType=s.CMapCompressionType=s.BaseException=s.BASELINE_FACTOR=s.AnnotationType=s.AnnotationReplyType=s.AnnotationPrefix=s.AnnotationMode=s.AnnotationFlag=s.AnnotationFieldFlag=s.AnnotationEditorType=s.AnnotationEditorPrefix=s.AnnotationEditorParamsType=s.AnnotationBorderStyleType=s.AnnotationActionEventType=s.AbortException=void 0,s.assert=D,s.bytesToString=ie,s.createValidAbsoluteUrl=Z,s.getModificationDate=Ae,s.getUuid=Pe,s.getVerbosityLevel=L,s.info=F,s.isArrayBuffer=Se,s.isArrayEqual=Ee,s.isNodeJS=void 0,s.normalizeUnicode=ye,s.objectFromMap=ve,s.objectSize=we,s.setVerbosityLevel=q,s.shadow=Q,s.string32=me,s.stringToBytes=ce,s.stringToPDFString=xe,s.stringToUTF8String=Ce,s.unreachable=N,s.utf8StringToString=$e,s.warn=U;const c=typeof process=="object"&&process+""=="[object process]"&&!process.versions.nw&&!(process.versions.electron&&process.type&&process.type!=="browser");s.isNodeJS=c;const u=[1,0,0,1,0,0];s.IDENTITY_MATRIX=u;const d=[.001,0,0,.001,0,0];s.FONT_IDENTITY_MATRIX=d;const p=1e7;s.MAX_IMAGE_SIZE_TO_CACHE=p;const v=1.35;s.LINE_FACTOR=v;const A=.35;s.LINE_DESCENT_FACTOR=A;const b=A/v;s.BASELINE_FACTOR=b;const g={ANY:1,DISPLAY:2,PRINT:4,SAVE:8,ANNOTATIONS_FORMS:16,ANNOTATIONS_STORAGE:32,ANNOTATIONS_DISABLE:64,OPLIST:256};s.RenderingIntentFlag=g;const x={DISABLE:0,ENABLE:1,ENABLE_FORMS:2,ENABLE_STORAGE:3};s.AnnotationMode=x;const y="pdfjs_internal_editor_";s.AnnotationEditorPrefix=y;const f={DISABLE:-1,NONE:0,FREETEXT:3,STAMP:13,INK:15};s.AnnotationEditorType=f;const m={RESIZE:1,CREATE:2,FREETEXT_SIZE:11,FREETEXT_COLOR:12,FREETEXT_OPACITY:13,INK_COLOR:21,INK_THICKNESS:22,INK_OPACITY:23};s.AnnotationEditorParamsType=m;const C={PRINT:4,MODIFY_CONTENTS:8,COPY:16,MODIFY_ANNOTATIONS:32,FILL_INTERACTIVE_FORMS:256,COPY_FOR_ACCESSIBILITY:512,ASSEMBLE:1024,PRINT_HIGH_QUALITY:2048};s.PermissionFlag=C;const S={FILL:0,STROKE:1,FILL_STROKE:2,INVISIBLE:3,FILL_ADD_TO_PATH:4,STROKE_ADD_TO_PATH:5,FILL_STROKE_ADD_TO_PATH:6,ADD_TO_PATH:7,FILL_STROKE_MASK:3,ADD_TO_PATH_FLAG:4};s.TextRenderingMode=S;const w={GRAYSCALE_1BPP:1,RGB_24BPP:2,RGBA_32BPP:3};s.ImageKind=w;const _={TEXT:1,LINK:2,FREETEXT:3,LINE:4,SQUARE:5,CIRCLE:6,POLYGON:7,POLYLINE:8,HIGHLIGHT:9,UNDERLINE:10,SQUIGGLY:11,STRIKEOUT:12,STAMP:13,CARET:14,INK:15,POPUP:16,FILEATTACHMENT:17,SOUND:18,MOVIE:19,WIDGET:20,SCREEN:21,PRINTERMARK:22,TRAPNET:23,WATERMARK:24,THREED:25,REDACT:26};s.AnnotationType=_;const I={GROUP:"Group",REPLY:"R"};s.AnnotationReplyType=I;const $={INVISIBLE:1,HIDDEN:2,PRINT:4,NOZOOM:8,NOROTATE:16,NOVIEW:32,READONLY:64,LOCKED:128,TOGGLENOVIEW:256,LOCKEDCONTENTS:512};s.AnnotationFlag=$;const P={READONLY:1,REQUIRED:2,NOEXPORT:4,MULTILINE:4096,PASSWORD:8192,NOTOGGLETOOFF:16384,RADIO:32768,PUSHBUTTON:65536,COMBO:131072,EDIT:262144,SORT:524288,FILESELECT:1048576,MULTISELECT:2097152,DONOTSPELLCHECK:4194304,DONOTSCROLL:8388608,COMB:16777216,RICHTEXT:33554432,RADIOSINUNISON:33554432,COMMITONSELCHANGE:67108864};s.AnnotationFieldFlag=P;const E={SOLID:1,DASHED:2,BEVELED:3,INSET:4,UNDERLINE:5};s.AnnotationBorderStyleType=E;const R={E:"Mouse Enter",X:"Mouse Exit",D:"Mouse Down",U:"Mouse Up",Fo:"Focus",Bl:"Blur",PO:"PageOpen",PC:"PageClose",PV:"PageVisible",PI:"PageInvisible",K:"Keystroke",F:"Format",V:"Validate",C:"Calculate"};s.AnnotationActionEventType=R;const T={WC:"WillClose",WS:"WillSave",DS:"DidSave",WP:"WillPrint",DP:"DidPrint"};s.DocumentActionEventType=T;const B={O:"PageOpen",C:"PageClose"};s.PageActionEventType=B;const M={ERRORS:0,WARNINGS:1,INFOS:5};s.VerbosityLevel=M;const k={NONE:0,BINARY:1};s.CMapCompressionType=k;const O={dependency:1,setLineWidth:2,setLineCap:3,setLineJoin:4,setMiterLimit:5,setDash:6,setRenderingIntent:7,setFlatness:8,setGState:9,save:10,restore:11,transform:12,moveTo:13,lineTo:14,curveTo:15,curveTo2:16,curveTo3:17,closePath:18,rectangle:19,stroke:20,closeStroke:21,fill:22,eoFill:23,fillStroke:24,eoFillStroke:25,closeFillStroke:26,closeEOFillStroke:27,endPath:28,clip:29,eoClip:30,beginText:31,endText:32,setCharSpacing:33,setWordSpacing:34,setHScale:35,setLeading:36,setFont:37,setTextRenderingMode:38,setTextRise:39,moveText:40,setLeadingMoveText:41,setTextMatrix:42,nextLine:43,showText:44,showSpacedText:45,nextLineShowText:46,nextLineSetSpacingShowText:47,setCharWidth:48,setCharWidthAndBounds:49,setStrokeColorSpace:50,setFillColorSpace:51,setStrokeColor:52,setStrokeColorN:53,setFillColor:54,setFillColorN:55,setStrokeGray:56,setFillGray:57,setStrokeRGBColor:58,setFillRGBColor:59,setStrokeCMYKColor:60,setFillCMYKColor:61,shadingFill:62,beginInlineImage:63,beginImageData:64,endInlineImage:65,paintXObject:66,markPoint:67,markPointProps:68,beginMarkedContent:69,beginMarkedContentProps:70,endMarkedContent:71,beginCompat:72,endCompat:73,paintFormXObjectBegin:74,paintFormXObjectEnd:75,beginGroup:76,endGroup:77,beginAnnotation:80,endAnnotation:81,paintImageMaskXObject:83,paintImageMaskXObjectGroup:84,paintImageXObject:85,paintInlineImageXObject:86,paintInlineImageXObjectGroup:87,paintImageXObjectRepeat:88,paintImageMaskXObjectRepeat:89,paintSolidColorImageMask:90,constructPath:91};s.OPS=O;const H={NEED_PASSWORD:1,INCORRECT_PASSWORD:2};s.PasswordResponses=H;let j=M.WARNINGS;function q(Oe){Number.isInteger(Oe)&&(j=Oe)}function L(){return j}function F(Oe){j>=M.INFOS&&console.log(`Info: ${Oe}`)}function U(Oe){j>=M.WARNINGS&&console.log(`Warning: ${Oe}`)}function N(Oe){throw new Error(Oe)}function D(Oe,Fe){Oe||N(Fe)}function W(Oe){switch(Oe==null?void 0:Oe.protocol){case"http:":case"https:":case"ftp:":case"mailto:":case"tel:":return!0;default:return!1}}function Z(Oe,Fe=null,_e=null){if(!Oe)return null;try{if(_e&&typeof Oe=="string"){if(_e.addDefaultProtocol&&Oe.startsWith("www.")){const Ye=Oe.match(/\./g);(Ye==null?void 0:Ye.length)>=2&&(Oe=`http://${Oe}`)}if(_e.tryConvertEncoding)try{Oe=Ce(Oe)}catch{}}const je=Fe?new URL(Oe,Fe):new URL(Oe);if(W(je))return je}catch{}return null}function Q(Oe,Fe,_e,je=!1){return Object.defineProperty(Oe,Fe,{value:_e,enumerable:!je,configurable:!0,writable:!1}),_e}const Y=function(){function Fe(_e,je){this.constructor===Fe&&N("Cannot initialize BaseException."),this.message=_e,this.name=je}return Fe.prototype=new Error,Fe.constructor=Fe,Fe}();s.BaseException=Y;class J extends Y{constructor(Fe,_e){super(Fe,"PasswordException"),this.code=_e}}s.PasswordException=J;class ee extends Y{constructor(Fe,_e){super(Fe,"UnknownErrorException"),this.details=_e}}s.UnknownErrorException=ee;class re extends Y{constructor(Fe){super(Fe,"InvalidPDFException")}}s.InvalidPDFException=re;class ae extends Y{constructor(Fe){super(Fe,"MissingPDFException")}}s.MissingPDFException=ae;class V extends Y{constructor(Fe,_e){super(Fe,"UnexpectedResponseException"),this.status=_e}}s.UnexpectedResponseException=V;class K extends Y{constructor(Fe){super(Fe,"FormatError")}}s.FormatError=K;class te extends Y{constructor(Fe){super(Fe,"AbortException")}}s.AbortException=te;function ie(Oe){(typeof Oe!="object"||(Oe==null?void 0:Oe.length)===void 0)&&N("Invalid argument for bytesToString");const Fe=Oe.length,_e=8192;if(Fe<_e)return String.fromCharCode.apply(null,Oe);const je=[];for(let Ye=0;Ye<Fe;Ye+=_e){const Te=Math.min(Ye+_e,Fe),ke=Oe.subarray(Ye,Te);je.push(String.fromCharCode.apply(null,ke))}return je.join("")}function ce(Oe){typeof Oe!="string"&&N("Invalid argument for stringToBytes");const Fe=Oe.length,_e=new Uint8Array(Fe);for(let je=0;je<Fe;++je)_e[je]=Oe.charCodeAt(je)&255;return _e}function me(Oe){return String.fromCharCode(Oe>>24&255,Oe>>16&255,Oe>>8&255,Oe&255)}function we(Oe){return Object.keys(Oe).length}function ve(Oe){const Fe=Object.create(null);for(const[_e,je]of Oe)Fe[_e]=je;return Fe}function ge(){const Oe=new Uint8Array(4);return Oe[0]=1,new Uint32Array(Oe.buffer,0,1)[0]===1}function ue(){try{return new Function(""),!0}catch{return!1}}class se{static get isLittleEndian(){return Q(this,"isLittleEndian",ge())}static get isEvalSupported(){return Q(this,"isEvalSupported",ue())}static get isOffscreenCanvasSupported(){return Q(this,"isOffscreenCanvasSupported",typeof OffscreenCanvas<"u")}static get platform(){return typeof navigator>"u"?Q(this,"platform",{isWin:!1,isMac:!1}):Q(this,"platform",{isWin:navigator.platform.includes("Win"),isMac:navigator.platform.includes("Mac")})}static get isCSSRoundSupported(){var Fe,_e;return Q(this,"isCSSRoundSupported",(_e=(Fe=globalThis.CSS)==null?void 0:Fe.supports)==null?void 0:_e.call(Fe,"width: round(1.5px, 1px)"))}}s.FeatureTest=se;const oe=[...Array(256).keys()].map(Oe=>Oe.toString(16).padStart(2,"0"));class de{static makeHexColor(Fe,_e,je){return`#${oe[Fe]}${oe[_e]}${oe[je]}`}static scaleMinMax(Fe,_e){let je;Fe[0]?(Fe[0]<0&&(je=_e[0],_e[0]=_e[1],_e[1]=je),_e[0]*=Fe[0],_e[1]*=Fe[0],Fe[3]<0&&(je=_e[2],_e[2]=_e[3],_e[3]=je),_e[2]*=Fe[3],_e[3]*=Fe[3]):(je=_e[0],_e[0]=_e[2],_e[2]=je,je=_e[1],_e[1]=_e[3],_e[3]=je,Fe[1]<0&&(je=_e[2],_e[2]=_e[3],_e[3]=je),_e[2]*=Fe[1],_e[3]*=Fe[1],Fe[2]<0&&(je=_e[0],_e[0]=_e[1],_e[1]=je),_e[0]*=Fe[2],_e[1]*=Fe[2]),_e[0]+=Fe[4],_e[1]+=Fe[4],_e[2]+=Fe[5],_e[3]+=Fe[5]}static transform(Fe,_e){return[Fe[0]*_e[0]+Fe[2]*_e[1],Fe[1]*_e[0]+Fe[3]*_e[1],Fe[0]*_e[2]+Fe[2]*_e[3],Fe[1]*_e[2]+Fe[3]*_e[3],Fe[0]*_e[4]+Fe[2]*_e[5]+Fe[4],Fe[1]*_e[4]+Fe[3]*_e[5]+Fe[5]]}static applyTransform(Fe,_e){const je=Fe[0]*_e[0]+Fe[1]*_e[2]+_e[4],Ye=Fe[0]*_e[1]+Fe[1]*_e[3]+_e[5];return[je,Ye]}static applyInverseTransform(Fe,_e){const je=_e[0]*_e[3]-_e[1]*_e[2],Ye=(Fe[0]*_e[3]-Fe[1]*_e[2]+_e[2]*_e[5]-_e[4]*_e[3])/je,Te=(-Fe[0]*_e[1]+Fe[1]*_e[0]+_e[4]*_e[1]-_e[5]*_e[0])/je;return[Ye,Te]}static getAxialAlignedBoundingBox(Fe,_e){const je=this.applyTransform(Fe,_e),Ye=this.applyTransform(Fe.slice(2,4),_e),Te=this.applyTransform([Fe[0],Fe[3]],_e),ke=this.applyTransform([Fe[2],Fe[1]],_e);return[Math.min(je[0],Ye[0],Te[0],ke[0]),Math.min(je[1],Ye[1],Te[1],ke[1]),Math.max(je[0],Ye[0],Te[0],ke[0]),Math.max(je[1],Ye[1],Te[1],ke[1])]}static inverseTransform(Fe){const _e=Fe[0]*Fe[3]-Fe[1]*Fe[2];return[Fe[3]/_e,-Fe[1]/_e,-Fe[2]/_e,Fe[0]/_e,(Fe[2]*Fe[5]-Fe[4]*Fe[3])/_e,(Fe[4]*Fe[1]-Fe[5]*Fe[0])/_e]}static singularValueDecompose2dScale(Fe){const _e=[Fe[0],Fe[2],Fe[1],Fe[3]],je=Fe[0]*_e[0]+Fe[1]*_e[2],Ye=Fe[0]*_e[1]+Fe[1]*_e[3],Te=Fe[2]*_e[0]+Fe[3]*_e[2],ke=Fe[2]*_e[1]+Fe[3]*_e[3],De=(je+ke)/2,Re=Math.sqrt((je+ke)**2-4*(je*ke-Te*Ye))/2,Ge=De+Re||1,Ve=De-Re||1;return[Math.sqrt(Ge),Math.sqrt(Ve)]}static normalizeRect(Fe){const _e=Fe.slice(0);return Fe[0]>Fe[2]&&(_e[0]=Fe[2],_e[2]=Fe[0]),Fe[1]>Fe[3]&&(_e[1]=Fe[3],_e[3]=Fe[1]),_e}static intersect(Fe,_e){const je=Math.max(Math.min(Fe[0],Fe[2]),Math.min(_e[0],_e[2])),Ye=Math.min(Math.max(Fe[0],Fe[2]),Math.max(_e[0],_e[2]));if(je>Ye)return null;const Te=Math.max(Math.min(Fe[1],Fe[3]),Math.min(_e[1],_e[3])),ke=Math.min(Math.max(Fe[1],Fe[3]),Math.max(_e[1],_e[3]));return Te>ke?null:[je,Te,Ye,ke]}static bezierBoundingBox(Fe,_e,je,Ye,Te,ke,De,Re){const Ge=[],Ve=[[],[]];let Xe,We,ze,Qe,et,Ze,qe,Je;for(let vt=0;vt<2;++vt){if(vt===0?(We=6*Fe-12*je+6*Te,Xe=-3*Fe+9*je-9*Te+3*De,ze=3*je-3*Fe):(We=6*_e-12*Ye+6*ke,Xe=-3*_e+9*Ye-9*ke+3*Re,ze=3*Ye-3*_e),Math.abs(Xe)<1e-12){if(Math.abs(We)<1e-12)continue;Qe=-ze/We,0<Qe&&Qe<1&&Ge.push(Qe);continue}qe=We*We-4*ze*Xe,Je=Math.sqrt(qe),!(qe<0)&&(et=(-We+Je)/(2*Xe),0<et&&et<1&&Ge.push(et),Ze=(-We-Je)/(2*Xe),0<Ze&&Ze<1&&Ge.push(Ze))}let ot=Ge.length,nt;const st=ot;for(;ot--;)Qe=Ge[ot],nt=1-Qe,Ve[0][ot]=nt*nt*nt*Fe+3*nt*nt*Qe*je+3*nt*Qe*Qe*Te+Qe*Qe*Qe*De,Ve[1][ot]=nt*nt*nt*_e+3*nt*nt*Qe*Ye+3*nt*Qe*Qe*ke+Qe*Qe*Qe*Re;return Ve[0][st]=Fe,Ve[1][st]=_e,Ve[0][st+1]=De,Ve[1][st+1]=Re,Ve[0].length=Ve[1].length=st+2,[Math.min(...Ve[0]),Math.min(...Ve[1]),Math.max(...Ve[0]),Math.max(...Ve[1])]}}s.Util=de;const le=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,728,711,710,729,733,731,730,732,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,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,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,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,8226,8224,8225,8230,8212,8211,402,8260,8249,8250,8722,8240,8222,8220,8221,8216,8217,8218,8482,64257,64258,321,338,352,376,381,305,322,339,353,382,0,8364];function xe(Oe){if(Oe[0]>="ï"){let _e;if(Oe[0]==="þ"&&Oe[1]==="ÿ"?_e="utf-16be":Oe[0]==="ÿ"&&Oe[1]==="þ"?_e="utf-16le":Oe[0]==="ï"&&Oe[1]==="»"&&Oe[2]==="¿"&&(_e="utf-8"),_e)try{const je=new TextDecoder(_e,{fatal:!0}),Ye=ce(Oe);return je.decode(Ye)}catch(je){U(`stringToPDFString: "${je}".`)}}const Fe=[];for(let _e=0,je=Oe.length;_e<je;_e++){const Ye=le[Oe.charCodeAt(_e)];Fe.push(Ye?String.fromCharCode(Ye):Oe.charAt(_e))}return Fe.join("")}function Ce(Oe){return decodeURIComponent(escape(Oe))}function $e(Oe){return unescape(encodeURIComponent(Oe))}function Se(Oe){return typeof Oe=="object"&&(Oe==null?void 0:Oe.byteLength)!==void 0}function Ee(Oe,Fe){if(Oe.length!==Fe.length)return!1;for(let _e=0,je=Oe.length;_e<je;_e++)if(Oe[_e]!==Fe[_e])return!1;return!0}function Ae(Oe=new Date){return[Oe.getUTCFullYear().toString(),(Oe.getUTCMonth()+1).toString().padStart(2,"0"),Oe.getUTCDate().toString().padStart(2,"0"),Oe.getUTCHours().toString().padStart(2,"0"),Oe.getUTCMinutes().toString().padStart(2,"0"),Oe.getUTCSeconds().toString().padStart(2,"0")].join("")}class pe{constructor(){bt(this,Le,!1);this.promise=new Promise((Fe,_e)=>{this.resolve=je=>{Ct(this,Le,!0),Fe(je)},this.reject=je=>{Ct(this,Le,!0),_e(je)}})}get settled(){return He(this,Le)}}Le=new WeakMap,s.PromiseCapability=pe;let he=null,Ie=null;function ye(Oe){return he||(he=/([\u00a0\u00b5\u037e\u0eb3\u2000-\u200a\u202f\u2126\ufb00-\ufb04\ufb06\ufb20-\ufb36\ufb38-\ufb3c\ufb3e\ufb40-\ufb41\ufb43-\ufb44\ufb46-\ufba1\ufba4-\ufba9\ufbae-\ufbb1\ufbd3-\ufbdc\ufbde-\ufbe7\ufbea-\ufbf8\ufbfc-\ufbfd\ufc00-\ufc5d\ufc64-\ufcf1\ufcf5-\ufd3d\ufd88\ufdf4\ufdfa-\ufdfb\ufe71\ufe77\ufe79\ufe7b\ufe7d]+)|(\ufb05+)/gu,Ie=new Map([["ſt","ſt"]])),Oe.replaceAll(he,(Fe,_e,je)=>_e?_e.normalize("NFKC"):Ie.get(je))}function Pe(){if(typeof crypto<"u"&&typeof(crypto==null?void 0:crypto.randomUUID)=="function")return crypto.randomUUID();const Oe=new Uint8Array(32);if(typeof crypto<"u"&&typeof(crypto==null?void 0:crypto.getRandomValues)=="function")crypto.getRandomValues(Oe);else for(let Fe=0;Fe<32;Fe++)Oe[Fe]=Math.floor(Math.random()*255);return ie(Oe)}const Ne="pdfjs_internal_id_";s.AnnotationPrefix=Ne},(__unused_webpack_module,exports,__w_pdfjs_require__)=>{var a,c,u,d,ka,po,A,b,g,x,y,f,m,C,S,go,_,I,Gs,P,E;Object.defineProperty(exports,"__esModule",{value:!0}),exports.RenderTask=exports.PDFWorkerUtil=exports.PDFWorker=exports.PDFPageProxy=exports.PDFDocumentProxy=exports.PDFDocumentLoadingTask=exports.PDFDataRangeTransport=exports.LoopbackPort=exports.DefaultStandardFontDataFactory=exports.DefaultFilterFactory=exports.DefaultCanvasFactory=exports.DefaultCMapReaderFactory=void 0,Object.defineProperty(exports,"SVGGraphics",{enumerable:!0,get:function(){return _displaySvg.SVGGraphics}}),exports.build=void 0,exports.getDocument=getDocument,exports.version=void 0;var _util=__w_pdfjs_require__(1),_annotation_storage=__w_pdfjs_require__(3),_display_utils=__w_pdfjs_require__(6),_font_loader=__w_pdfjs_require__(9),_displayNode_utils=__w_pdfjs_require__(10),_canvas=__w_pdfjs_require__(11),_worker_options=__w_pdfjs_require__(14),_message_handler=__w_pdfjs_require__(15),_metadata=__w_pdfjs_require__(16),_optional_content_config=__w_pdfjs_require__(17),_transport_stream=__w_pdfjs_require__(18),_displayFetch_stream=__w_pdfjs_require__(19),_displayNetwork=__w_pdfjs_require__(22),_displayNode_stream=__w_pdfjs_require__(23),_displaySvg=__w_pdfjs_require__(24),_xfa_text=__w_pdfjs_require__(25);const DEFAULT_RANGE_CHUNK_SIZE=65536,RENDERING_CANCELLED_TIMEOUT=100,DELAYED_CLEANUP_TIMEOUT=5e3,DefaultCanvasFactory=_util.isNodeJS?_displayNode_utils.NodeCanvasFactory:_display_utils.DOMCanvasFactory;exports.DefaultCanvasFactory=DefaultCanvasFactory;const DefaultCMapReaderFactory=_util.isNodeJS?_displayNode_utils.NodeCMapReaderFactory:_display_utils.DOMCMapReaderFactory;exports.DefaultCMapReaderFactory=DefaultCMapReaderFactory;const DefaultFilterFactory=_util.isNodeJS?_displayNode_utils.NodeFilterFactory:_display_utils.DOMFilterFactory;exports.DefaultFilterFactory=DefaultFilterFactory;const DefaultStandardFontDataFactory=_util.isNodeJS?_displayNode_utils.NodeStandardFontDataFactory:_display_utils.DOMStandardFontDataFactory;exports.DefaultStandardFontDataFactory=DefaultStandardFontDataFactory;function getDocument(T){if(typeof T=="string"||T instanceof URL?T={url:T}:(0,_util.isArrayBuffer)(T)&&(T={data:T}),typeof T!="object")throw new Error("Invalid parameter in getDocument, need parameter object.");if(!T.url&&!T.data&&!T.range)throw new Error("Invalid parameter object: need either .data, .range or .url");const B=new PDFDocumentLoadingTask,{docId:M}=B,k=T.url?getUrlProp(T.url):null,O=T.data?getDataProp(T.data):null,H=T.httpHeaders||null,j=T.withCredentials===!0,q=T.password??null,L=T.range instanceof PDFDataRangeTransport?T.range:null,F=Number.isInteger(T.rangeChunkSize)&&T.rangeChunkSize>0?T.rangeChunkSize:DEFAULT_RANGE_CHUNK_SIZE;let U=T.worker instanceof PDFWorker?T.worker:null;const N=T.verbosity,D=typeof T.docBaseUrl=="string"&&!(0,_display_utils.isDataScheme)(T.docBaseUrl)?T.docBaseUrl:null,W=typeof T.cMapUrl=="string"?T.cMapUrl:null,Z=T.cMapPacked!==!1,Q=T.CMapReaderFactory||DefaultCMapReaderFactory,Y=typeof T.standardFontDataUrl=="string"?T.standardFontDataUrl:null,J=T.StandardFontDataFactory||DefaultStandardFontDataFactory,ee=T.stopAtErrors!==!0,re=Number.isInteger(T.maxImageSize)&&T.maxImageSize>-1?T.maxImageSize:-1,ae=T.isEvalSupported!==!1,V=typeof T.isOffscreenCanvasSupported=="boolean"?T.isOffscreenCanvasSupported:!_util.isNodeJS,K=Number.isInteger(T.canvasMaxAreaInBytes)?T.canvasMaxAreaInBytes:-1,te=typeof T.disableFontFace=="boolean"?T.disableFontFace:_util.isNodeJS,ie=T.fontExtraProperties===!0,ce=T.enableXfa===!0,me=T.ownerDocument||globalThis.document,we=T.disableRange===!0,ve=T.disableStream===!0,ge=T.disableAutoFetch===!0,ue=T.pdfBug===!0,se=L?L.length:T.length??NaN,oe=typeof T.useSystemFonts=="boolean"?T.useSystemFonts:!_util.isNodeJS&&!te,de=typeof T.useWorkerFetch=="boolean"?T.useWorkerFetch:Q===_display_utils.DOMCMapReaderFactory&&J===_display_utils.DOMStandardFontDataFactory&&W&&Y&&(0,_display_utils.isValidFetchUrl)(W,document.baseURI)&&(0,_display_utils.isValidFetchUrl)(Y,document.baseURI),le=T.canvasFactory||new DefaultCanvasFactory({ownerDocument:me}),xe=T.filterFactory||new DefaultFilterFactory({docId:M,ownerDocument:me}),Ce=null;(0,_util.setVerbosityLevel)(N);const $e={canvasFactory:le,filterFactory:xe};if(de||($e.cMapReaderFactory=new Q({baseUrl:W,isCompressed:Z}),$e.standardFontDataFactory=new J({baseUrl:Y})),!U){const Ae={verbosity:N,port:_worker_options.GlobalWorkerOptions.workerPort};U=Ae.port?PDFWorker.fromPort(Ae):new PDFWorker(Ae),B._worker=U}const Se={docId:M,apiVersion:"3.11.174",data:O,password:q,disableAutoFetch:ge,rangeChunkSize:F,length:se,docBaseUrl:D,enableXfa:ce,evaluatorOptions:{maxImageSize:re,disableFontFace:te,ignoreErrors:ee,isEvalSupported:ae,isOffscreenCanvasSupported:V,canvasMaxAreaInBytes:K,fontExtraProperties:ie,useSystemFonts:oe,cMapUrl:de?W:null,standardFontDataUrl:de?Y:null}},Ee={ignoreErrors:ee,isEvalSupported:ae,disableFontFace:te,fontExtraProperties:ie,enableXfa:ce,ownerDocument:me,disableAutoFetch:ge,pdfBug:ue,styleElement:Ce};return U.promise.then(function(){if(B.destroyed)throw new Error("Loading aborted");const Ae=_fetchDocument(U,Se),pe=new Promise(function(he){let Ie;L?Ie=new _transport_stream.PDFDataTransportStream({length:se,initialData:L.initialData,progressiveDone:L.progressiveDone,contentDispositionFilename:L.contentDispositionFilename,disableRange:we,disableStream:ve},L):O||(Ie=(Pe=>_util.isNodeJS?new _displayNode_stream.PDFNodeStream(Pe):(0,_display_utils.isValidFetchUrl)(Pe.url)?new _displayFetch_stream.PDFFetchStream(Pe):new _displayNetwork.PDFNetworkStream(Pe))({url:k,length:se,httpHeaders:H,withCredentials:j,rangeChunkSize:F,disableRange:we,disableStream:ve})),he(Ie)});return Promise.all([Ae,pe]).then(function([he,Ie]){if(B.destroyed)throw new Error("Loading aborted");const ye=new _message_handler.MessageHandler(M,he,U.port),Pe=new WorkerTransport(ye,B,Ie,Ee,$e);B._transport=Pe,ye.send("Ready",null)})}).catch(B._capability.reject),B}async function _fetchDocument(T,B){if(T.destroyed)throw new Error("Worker was destroyed");const M=await T.messageHandler.sendWithPromise("GetDocRequest",B,B.data?[B.data.buffer]:null);if(T.destroyed)throw new Error("Worker was destroyed");return M}function getUrlProp(T){if(T instanceof URL)return T.href;try{return new URL(T,window.location).href}catch{if(_util.isNodeJS&&typeof T=="string")return T}throw new Error("Invalid PDF url data: either string or URL-object is expected in the url property.")}function getDataProp(T){if(_util.isNodeJS&&typeof Buffer<"u"&&T instanceof Buffer)throw new Error("Please provide binary data as `Uint8Array`, rather than `Buffer`.");if(T instanceof Uint8Array&&T.byteLength===T.buffer.byteLength)return T;if(typeof T=="string")return(0,_util.stringToBytes)(T);if(typeof T=="object"&&!isNaN(T==null?void 0:T.length)||(0,_util.isArrayBuffer)(T))return new Uint8Array(T);throw new Error("Invalid PDF binary data: either TypedArray, string, or array-like object is expected in the data property.")}const s=class s{constructor(){this._capability=new _util.PromiseCapability,this._transport=null,this._worker=null,this.docId=`d${hi(s,a)._++}`,this.destroyed=!1,this.onPassword=null,this.onProgress=null}get promise(){return this._capability.promise}async destroy(){var B,M,k;this.destroyed=!0;try{(B=this._worker)!=null&&B.port&&(this._worker._pendingDestroy=!0),await((M=this._transport)==null?void 0:M.destroy())}catch(O){throw(k=this._worker)!=null&&k.port&&delete this._worker._pendingDestroy,O}this._transport=null,this._worker&&(this._worker.destroy(),this._worker=null)}};a=new WeakMap,bt(s,a,0);let PDFDocumentLoadingTask=s;exports.PDFDocumentLoadingTask=PDFDocumentLoadingTask;class PDFDataRangeTransport{constructor(B,M,k=!1,O=null){this.length=B,this.initialData=M,this.progressiveDone=k,this.contentDispositionFilename=O,this._rangeListeners=[],this._progressListeners=[],this._progressiveReadListeners=[],this._progressiveDoneListeners=[],this._readyCapability=new _util.PromiseCapability}addRangeListener(B){this._rangeListeners.push(B)}addProgressListener(B){this._progressListeners.push(B)}addProgressiveReadListener(B){this._progressiveReadListeners.push(B)}addProgressiveDoneListener(B){this._progressiveDoneListeners.push(B)}onDataRange(B,M){for(const k of this._rangeListeners)k(B,M)}onDataProgress(B,M){this._readyCapability.promise.then(()=>{for(const k of this._progressListeners)k(B,M)})}onDataProgressiveRead(B){this._readyCapability.promise.then(()=>{for(const M of this._progressiveReadListeners)M(B)})}onDataProgressiveDone(){this._readyCapability.promise.then(()=>{for(const B of this._progressiveDoneListeners)B()})}transportReady(){this._readyCapability.resolve()}requestDataRange(B,M){(0,_util.unreachable)("Abstract method PDFDataRangeTransport.requestDataRange")}abort(){}}exports.PDFDataRangeTransport=PDFDataRangeTransport;class PDFDocumentProxy{constructor(B,M){this._pdfInfo=B,this._transport=M,Object.defineProperty(this,"getJavaScript",{value:()=>((0,_display_utils.deprecated)("`PDFDocumentProxy.getJavaScript`, please use `PDFDocumentProxy.getJSActions` instead."),this.getJSActions().then(k=>{if(!k)return k;const O=[];for(const H in k)O.push(...k[H]);return O}))})}get annotationStorage(){return this._transport.annotationStorage}get filterFactory(){return this._transport.filterFactory}get numPages(){return this._pdfInfo.numPages}get fingerprints(){return this._pdfInfo.fingerprints}get isPureXfa(){return(0,_util.shadow)(this,"isPureXfa",!!this._transport._htmlForXfa)}get allXfaHtml(){return this._transport._htmlForXfa}getPage(B){return this._transport.getPage(B)}getPageIndex(B){return this._transport.getPageIndex(B)}getDestinations(){return this._transport.getDestinations()}getDestination(B){return this._transport.getDestination(B)}getPageLabels(){return this._transport.getPageLabels()}getPageLayout(){return this._transport.getPageLayout()}getPageMode(){return this._transport.getPageMode()}getViewerPreferences(){return this._transport.getViewerPreferences()}getOpenAction(){return this._transport.getOpenAction()}getAttachments(){return this._transport.getAttachments()}getJSActions(){return this._transport.getDocJSActions()}getOutline(){return this._transport.getOutline()}getOptionalContentConfig(){return this._transport.getOptionalContentConfig()}getPermissions(){return this._transport.getPermissions()}getMetadata(){return this._transport.getMetadata()}getMarkInfo(){return this._transport.getMarkInfo()}getData(){return this._transport.getData()}saveDocument(){return this._transport.saveDocument()}getDownloadInfo(){return this._transport.downloadInfoCapability.promise}cleanup(B=!1){return this._transport.startCleanup(B||this.isPureXfa)}destroy(){return this.loadingTask.destroy()}get loadingParams(){return this._transport.loadingParams}get loadingTask(){return this._transport.loadingTask}getFieldObjects(){return this._transport.getFieldObjects()}hasJSActions(){return this._transport.hasJSActions()}getCalculationOrderIds(){return this._transport.getCalculationOrderIds()}}exports.PDFDocumentProxy=PDFDocumentProxy;class PDFPageProxy{constructor(B,M,k,O=!1){bt(this,d);bt(this,c,null);bt(this,u,!1);this._pageIndex=B,this._pageInfo=M,this._transport=k,this._stats=O?new _display_utils.StatTimer:null,this._pdfBug=O,this.commonObjs=k.commonObjs,this.objs=new PDFObjects,this._maybeCleanupAfterRender=!1,this._intentStates=new Map,this.destroyed=!1}get pageNumber(){return this._pageIndex+1}get rotate(){return this._pageInfo.rotate}get ref(){return this._pageInfo.ref}get userUnit(){return this._pageInfo.userUnit}get view(){return this._pageInfo.view}getViewport({scale:B,rotation:M=this.rotate,offsetX:k=0,offsetY:O=0,dontFlip:H=!1}={}){return new _display_utils.PageViewport({viewBox:this.view,scale:B,rotation:M,offsetX:k,offsetY:O,dontFlip:H})}getAnnotations({intent:B="display"}={}){const M=this._transport.getRenderingIntent(B);return this._transport.getAnnotations(this._pageIndex,M.renderingIntent)}getJSActions(){return this._transport.getPageJSActions(this._pageIndex)}get filterFactory(){return this._transport.filterFactory}get isPureXfa(){return(0,_util.shadow)(this,"isPureXfa",!!this._transport._htmlForXfa)}async getXfa(){var B;return((B=this._transport._htmlForXfa)==null?void 0:B.children[this._pageIndex])||null}render({canvasContext:B,viewport:M,intent:k="display",annotationMode:O=_util.AnnotationMode.ENABLE,transform:H=null,background:j=null,optionalContentConfigPromise:q=null,annotationCanvasMap:L=null,pageColors:F=null,printAnnotationStorage:U=null}){var J,ee;(J=this._stats)==null||J.time("Overall");const N=this._transport.getRenderingIntent(k,O,U);Ct(this,u,!1),it(this,d,po).call(this),q||(q=this._transport.getOptionalContentConfig());let D=this._intentStates.get(N.cacheKey);D||(D=Object.create(null),this._intentStates.set(N.cacheKey,D)),D.streamReaderCancelTimeout&&(clearTimeout(D.streamReaderCancelTimeout),D.streamReaderCancelTimeout=null);const W=!!(N.renderingIntent&_util.RenderingIntentFlag.PRINT);D.displayReadyCapability||(D.displayReadyCapability=new _util.PromiseCapability,D.operatorList={fnArray:[],argsArray:[],lastChunk:!1,separateAnnots:null},(ee=this._stats)==null||ee.time("Page Request"),this._pumpOperatorList(N));const Z=re=>{var ae,V;D.renderTasks.delete(Q),(this._maybeCleanupAfterRender||W)&&Ct(this,u,!0),it(this,d,ka).call(this,!W),re?(Q.capability.reject(re),this._abortOperatorList({intentState:D,reason:re instanceof Error?re:new Error(re)})):Q.capability.resolve(),(ae=this._stats)==null||ae.timeEnd("Rendering"),(V=this._stats)==null||V.timeEnd("Overall")},Q=new InternalRenderTask({callback:Z,params:{canvasContext:B,viewport:M,transform:H,background:j},objs:this.objs,commonObjs:this.commonObjs,annotationCanvasMap:L,operatorList:D.operatorList,pageIndex:this._pageIndex,canvasFactory:this._transport.canvasFactory,filterFactory:this._transport.filterFactory,useRequestAnimationFrame:!W,pdfBug:this._pdfBug,pageColors:F});(D.renderTasks||(D.renderTasks=new Set)).add(Q);const Y=Q.task;return Promise.all([D.displayReadyCapability.promise,q]).then(([re,ae])=>{var V;if(this.destroyed){Z();return}(V=this._stats)==null||V.time("Rendering"),Q.initializeGraphics({transparency:re,optionalContentConfig:ae}),Q.operatorListChanged()}).catch(Z),Y}getOperatorList({intent:B="display",annotationMode:M=_util.AnnotationMode.ENABLE,printAnnotationStorage:k=null}={}){var L;function O(){j.operatorList.lastChunk&&(j.opListReadCapability.resolve(j.operatorList),j.renderTasks.delete(q))}const H=this._transport.getRenderingIntent(B,M,k,!0);let j=this._intentStates.get(H.cacheKey);j||(j=Object.create(null),this._intentStates.set(H.cacheKey,j));let q;return j.opListReadCapability||(q=Object.create(null),q.operatorListChanged=O,j.opListReadCapability=new _util.PromiseCapability,(j.renderTasks||(j.renderTasks=new Set)).add(q),j.operatorList={fnArray:[],argsArray:[],lastChunk:!1,separateAnnots:null},(L=this._stats)==null||L.time("Page Request"),this._pumpOperatorList(H)),j.opListReadCapability.promise}streamTextContent({includeMarkedContent:B=!1,disableNormalization:M=!1}={}){return this._transport.messageHandler.sendWithStream("GetTextContent",{pageIndex:this._pageIndex,includeMarkedContent:B===!0,disableNormalization:M===!0},{highWaterMark:100,size(O){return O.items.length}})}getTextContent(B={}){if(this._transport._htmlForXfa)return this.getXfa().then(k=>_xfa_text.XfaText.textContent(k));const M=this.streamTextContent(B);return new Promise(function(k,O){function H(){j.read().then(function({value:L,done:F}){if(F){k(q);return}Object.assign(q.styles,L.styles),q.items.push(...L.items),H()},O)}const j=M.getReader(),q={items:[],styles:Object.create(null)};H()})}getStructTree(){return this._transport.getStructTree(this._pageIndex)}_destroy(){this.destroyed=!0;const B=[];for(const M of this._intentStates.values())if(this._abortOperatorList({intentState:M,reason:new Error("Page was destroyed."),force:!0}),!M.opListReadCapability)for(const k of M.renderTasks)B.push(k.completed),k.cancel();return this.objs.clear(),Ct(this,u,!1),it(this,d,po).call(this),Promise.all(B)}cleanup(B=!1){Ct(this,u,!0);const M=it(this,d,ka).call(this,!1);return B&&M&&this._stats&&(this._stats=new _display_utils.StatTimer),M}_startRenderPage(B,M){var O,H;const k=this._intentStates.get(M);k&&((O=this._stats)==null||O.timeEnd("Page Request"),(H=k.displayReadyCapability)==null||H.resolve(B))}_renderPageChunk(B,M){for(let k=0,O=B.length;k<O;k++)M.operatorList.fnArray.push(B.fnArray[k]),M.operatorList.argsArray.push(B.argsArray[k]);M.operatorList.lastChunk=B.lastChunk,M.operatorList.separateAnnots=B.separateAnnots;for(const k of M.renderTasks)k.operatorListChanged();B.lastChunk&&it(this,d,ka).call(this,!0)}_pumpOperatorList({renderingIntent:B,cacheKey:M,annotationStorageSerializable:k}){const{map:O,transfers:H}=k,q=this._transport.messageHandler.sendWithStream("GetOperatorList",{pageIndex:this._pageIndex,intent:B,cacheKey:M,annotationStorage:O},H).getReader(),L=this._intentStates.get(M);L.streamReader=q;const F=()=>{q.read().then(({value:U,done:N})=>{if(N){L.streamReader=null;return}this._transport.destroyed||(this._renderPageChunk(U,L),F())},U=>{if(L.streamReader=null,!this._transport.destroyed){if(L.operatorList){L.operatorList.lastChunk=!0;for(const N of L.renderTasks)N.operatorListChanged();it(this,d,ka).call(this,!0)}if(L.displayReadyCapability)L.displayReadyCapability.reject(U);else if(L.opListReadCapability)L.opListReadCapability.reject(U);else throw U}})};F()}_abortOperatorList({intentState:B,reason:M,force:k=!1}){if(B.streamReader){if(B.streamReaderCancelTimeout&&(clearTimeout(B.streamReaderCancelTimeout),B.streamReaderCancelTimeout=null),!k){if(B.renderTasks.size>0)return;if(M instanceof _display_utils.RenderingCancelledException){let O=RENDERING_CANCELLED_TIMEOUT;M.extraDelay>0&&M.extraDelay<1e3&&(O+=M.extraDelay),B.streamReaderCancelTimeout=setTimeout(()=>{B.streamReaderCancelTimeout=null,this._abortOperatorList({intentState:B,reason:M,force:!0})},O);return}}if(B.streamReader.cancel(new _util.AbortException(M.message)).catch(()=>{}),B.streamReader=null,!this._transport.destroyed){for(const[O,H]of this._intentStates)if(H===B){this._intentStates.delete(O);break}this.cleanup()}}}get stats(){return this._stats}}c=new WeakMap,u=new WeakMap,d=new WeakSet,ka=function(B=!1){if(it(this,d,po).call(this),!He(this,u)||this.destroyed)return!1;if(B)return Ct(this,c,setTimeout(()=>{Ct(this,c,null),it(this,d,ka).call(this,!1)},DELAYED_CLEANUP_TIMEOUT)),!1;for(const{renderTasks:M,operatorList:k}of this._intentStates.values())if(M.size>0||!k.lastChunk)return!1;return this._intentStates.clear(),this.objs.clear(),Ct(this,u,!1),!0},po=function(){He(this,c)&&(clearTimeout(He(this,c)),Ct(this,c,null))},exports.PDFPageProxy=PDFPageProxy;class LoopbackPort{constructor(){bt(this,A,new Set);bt(this,b,Promise.resolve())}postMessage(B,M){const k={data:structuredClone(B,M?{transfer:M}:null)};He(this,b).then(()=>{for(const O of He(this,A))O.call(this,k)})}addEventListener(B,M){He(this,A).add(M)}removeEventListener(B,M){He(this,A).delete(M)}terminate(){He(this,A).clear()}}A=new WeakMap,b=new WeakMap,exports.LoopbackPort=LoopbackPort;const PDFWorkerUtil={isWorkerDisabled:!1,fallbackWorkerSrc:null,fakeWorkerId:0};exports.PDFWorkerUtil=PDFWorkerUtil;{if(_util.isNodeJS&&typeof commonjsRequire=="function")PDFWorkerUtil.isWorkerDisabled=!0,PDFWorkerUtil.fallbackWorkerSrc="./pdf.worker.js";else if(typeof document=="object"){const T=(g=document==null?void 0:document.currentScript)==null?void 0:g.src;T&&(PDFWorkerUtil.fallbackWorkerSrc=T.replace(/(\.(?:min\.)?js)(\?.*)?$/i,".worker$1$2"))}PDFWorkerUtil.isSameOrigin=function(T,B){let M;try{if(M=new URL(T),!M.origin||M.origin==="null")return!1}catch{return!1}const k=new URL(B,M);return M.origin===k.origin},PDFWorkerUtil.createCDNWrapper=function(T){const B=`importScripts("${T}");`;return URL.createObjectURL(new Blob([B]))}}const _PDFWorker=class _PDFWorker{constructor({name:T=null,port:B=null,verbosity:M=(0,_util.getVerbosityLevel)()}={}){var k;if(this.name=T,this.destroyed=!1,this.verbosity=M,this._readyCapability=new _util.PromiseCapability,this._port=null,this._webWorker=null,this._messageHandler=null,B){if((k=He(_PDFWorker,x))!=null&&k.has(B))throw new Error("Cannot use more than one PDFWorker per port.");(He(_PDFWorker,x)||Ct(_PDFWorker,x,new WeakMap)).set(B,this),this._initializeFromPort(B);return}this._initialize()}get promise(){return this._readyCapability.promise}get port(){return this._port}get messageHandler(){return this._messageHandler}_initializeFromPort(T){this._port=T,this._messageHandler=new _message_handler.MessageHandler("main","worker",T),this._messageHandler.on("ready",function(){}),this._readyCapability.resolve(),this._messageHandler.send("configure",{verbosity:this.verbosity})}_initialize(){if(!PDFWorkerUtil.isWorkerDisabled&&!_PDFWorker._mainThreadWorkerMessageHandler){let{workerSrc:T}=_PDFWorker;try{PDFWorkerUtil.isSameOrigin(window.location.href,T)||(T=PDFWorkerUtil.createCDNWrapper(new URL(T,window.location).href));const B=new Worker(T),M=new _message_handler.MessageHandler("main","worker",B),k=()=>{B.removeEventListener("error",O),M.destroy(),B.terminate(),this.destroyed?this._readyCapability.reject(new Error("Worker was destroyed")):this._setupFakeWorker()},O=()=>{this._webWorker||k()};B.addEventListener("error",O),M.on("test",j=>{if(B.removeEventListener("error",O),this.destroyed){k();return}j?(this._messageHandler=M,this._port=B,this._webWorker=B,this._readyCapability.resolve(),M.send("configure",{verbosity:this.verbosity})):(this._setupFakeWorker(),M.destroy(),B.terminate())}),M.on("ready",j=>{if(B.removeEventListener("error",O),this.destroyed){k();return}try{H()}catch{this._setupFakeWorker()}});const H=()=>{const j=new Uint8Array;M.send("test",j,[j.buffer])};H();return}catch{(0,_util.info)("The worker has been disabled.")}}this._setupFakeWorker()}_setupFakeWorker(){PDFWorkerUtil.isWorkerDisabled||((0,_util.warn)("Setting up fake worker."),PDFWorkerUtil.isWorkerDisabled=!0),_PDFWorker._setupFakeWorkerGlobal.then(T=>{if(this.destroyed){this._readyCapability.reject(new Error("Worker was destroyed"));return}const B=new LoopbackPort;this._port=B;const M=`fake${PDFWorkerUtil.fakeWorkerId++}`,k=new _message_handler.MessageHandler(M+"_worker",M,B);T.setup(k,B);const O=new _message_handler.MessageHandler(M,M+"_worker",B);this._messageHandler=O,this._readyCapability.resolve(),O.send("configure",{verbosity:this.verbosity})}).catch(T=>{this._readyCapability.reject(new Error(`Setting up fake worker failed: "${T.message}".`))})}destroy(){var T;this.destroyed=!0,this._webWorker&&(this._webWorker.terminate(),this._webWorker=null),(T=He(_PDFWorker,x))==null||T.delete(this._port),this._port=null,this._messageHandler&&(this._messageHandler.destroy(),this._messageHandler=null)}static fromPort(T){var M;if(!(T!=null&&T.port))throw new Error("PDFWorker.fromPort - invalid method signature.");const B=(M=He(this,x))==null?void 0:M.get(T.port);if(B){if(B._pendingDestroy)throw new Error("PDFWorker.fromPort - the worker is being destroyed.\nPlease remember to await `PDFDocumentLoadingTask.destroy()`-calls.");return B}return new _PDFWorker(T)}static get workerSrc(){if(_worker_options.GlobalWorkerOptions.workerSrc)return _worker_options.GlobalWorkerOptions.workerSrc;if(PDFWorkerUtil.fallbackWorkerSrc!==null)return _util.isNodeJS||(0,_display_utils.deprecated)('No "GlobalWorkerOptions.workerSrc" specified.'),PDFWorkerUtil.fallbackWorkerSrc;throw new Error('No "GlobalWorkerOptions.workerSrc" specified.')}static get _mainThreadWorkerMessageHandler(){var T;try{return((T=globalThis.pdfjsWorker)==null?void 0:T.WorkerMessageHandler)||null}catch{return null}}static get _setupFakeWorkerGlobal(){const loader=async()=>{const mainWorkerMessageHandler=this._mainThreadWorkerMessageHandler;if(mainWorkerMessageHandler)return mainWorkerMessageHandler;if(_util.isNodeJS&&typeof commonjsRequire=="function"){const worker=eval("require")(this.workerSrc);return worker.WorkerMessageHandler}return await(0,_display_utils.loadScript)(this.workerSrc),window.pdfjsWorker.WorkerMessageHandler};return(0,_util.shadow)(this,"_setupFakeWorkerGlobal",loader())}};x=new WeakMap,bt(_PDFWorker,x);let PDFWorker=_PDFWorker;exports.PDFWorker=PDFWorker;class WorkerTransport{constructor(B,M,k,O,H){bt(this,S);bt(this,y,new Map);bt(this,f,new Map);bt(this,m,new Map);bt(this,C,null);this.messageHandler=B,this.loadingTask=M,this.commonObjs=new PDFObjects,this.fontLoader=new _font_loader.FontLoader({ownerDocument:O.ownerDocument,styleElement:O.styleElement}),this._params=O,this.canvasFactory=H.canvasFactory,this.filterFactory=H.filterFactory,this.cMapReaderFactory=H.cMapReaderFactory,this.standardFontDataFactory=H.standardFontDataFactory,this.destroyed=!1,this.destroyCapability=null,this._networkStream=k,this._fullReader=null,this._lastProgress=null,this.downloadInfoCapability=new _util.PromiseCapability,this.setupMessageHandler()}get annotationStorage(){return(0,_util.shadow)(this,"annotationStorage",new _annotation_storage.AnnotationStorage)}getRenderingIntent(B,M=_util.AnnotationMode.ENABLE,k=null,O=!1){let H=_util.RenderingIntentFlag.DISPLAY,j=_annotation_storage.SerializableEmpty;switch(B){case"any":H=_util.RenderingIntentFlag.ANY;break;case"display":break;case"print":H=_util.RenderingIntentFlag.PRINT;break;default:(0,_util.warn)(`getRenderingIntent - invalid intent: ${B}`)}switch(M){case _util.AnnotationMode.DISABLE:H+=_util.RenderingIntentFlag.ANNOTATIONS_DISABLE;break;case _util.AnnotationMode.ENABLE:break;case _util.AnnotationMode.ENABLE_FORMS:H+=_util.RenderingIntentFlag.ANNOTATIONS_FORMS;break;case _util.AnnotationMode.ENABLE_STORAGE:H+=_util.RenderingIntentFlag.ANNOTATIONS_STORAGE,j=(H&_util.RenderingIntentFlag.PRINT&&k instanceof _annotation_storage.PrintAnnotationStorage?k:this.annotationStorage).serializable;break;default:(0,_util.warn)(`getRenderingIntent - invalid annotationMode: ${M}`)}return O&&(H+=_util.RenderingIntentFlag.OPLIST),{renderingIntent:H,cacheKey:`${H}_${j.hash}`,annotationStorageSerializable:j}}destroy(){var k;if(this.destroyCapability)return this.destroyCapability.promise;this.destroyed=!0,this.destroyCapability=new _util.PromiseCapability,(k=He(this,C))==null||k.reject(new Error("Worker was destroyed during onPassword callback"));const B=[];for(const O of He(this,f).values())B.push(O._destroy());He(this,f).clear(),He(this,m).clear(),this.hasOwnProperty("annotationStorage")&&this.annotationStorage.resetModified();const M=this.messageHandler.sendWithPromise("Terminate",null);return B.push(M),Promise.all(B).then(()=>{var O;this.commonObjs.clear(),this.fontLoader.clear(),He(this,y).clear(),this.filterFactory.destroy(),(O=this._networkStream)==null||O.cancelAllRequests(new _util.AbortException("Worker was terminated.")),this.messageHandler&&(this.messageHandler.destroy(),this.messageHandler=null),this.destroyCapability.resolve()},this.destroyCapability.reject),this.destroyCapability.promise}setupMessageHandler(){const{messageHandler:B,loadingTask:M}=this;B.on("GetReader",(k,O)=>{(0,_util.assert)(this._networkStream,"GetReader - no `IPDFStream` instance available."),this._fullReader=this._networkStream.getFullReader(),this._fullReader.onProgress=H=>{this._lastProgress={loaded:H.loaded,total:H.total}},O.onPull=()=>{this._fullReader.read().then(function({value:H,done:j}){if(j){O.close();return}(0,_util.assert)(H instanceof ArrayBuffer,"GetReader - expected an ArrayBuffer."),O.enqueue(new Uint8Array(H),1,[H])}).catch(H=>{O.error(H)})},O.onCancel=H=>{this._fullReader.cancel(H),O.ready.catch(j=>{if(!this.destroyed)throw j})}}),B.on("ReaderHeadersReady",k=>{const O=new _util.PromiseCapability,H=this._fullReader;return H.headersReady.then(()=>{var j;(!H.isStreamingSupported||!H.isRangeSupported)&&(this._lastProgress&&((j=M.onProgress)==null||j.call(M,this._lastProgress)),H.onProgress=q=>{var L;(L=M.onProgress)==null||L.call(M,{loaded:q.loaded,total:q.total})}),O.resolve({isStreamingSupported:H.isStreamingSupported,isRangeSupported:H.isRangeSupported,contentLength:H.contentLength})},O.reject),O.promise}),B.on("GetRangeReader",(k,O)=>{(0,_util.assert)(this._networkStream,"GetRangeReader - no `IPDFStream` instance available.");const H=this._networkStream.getRangeReader(k.begin,k.end);if(!H){O.close();return}O.onPull=()=>{H.read().then(function({value:j,done:q}){if(q){O.close();return}(0,_util.assert)(j instanceof ArrayBuffer,"GetRangeReader - expected an ArrayBuffer."),O.enqueue(new Uint8Array(j),1,[j])}).catch(j=>{O.error(j)})},O.onCancel=j=>{H.cancel(j),O.ready.catch(q=>{if(!this.destroyed)throw q})}}),B.on("GetDoc",({pdfInfo:k})=>{this._numPages=k.numPages,this._htmlForXfa=k.htmlForXfa,delete k.htmlForXfa,M._capability.resolve(new PDFDocumentProxy(k,this))}),B.on("DocException",function(k){let O;switch(k.name){case"PasswordException":O=new _util.PasswordException(k.message,k.code);break;case"InvalidPDFException":O=new _util.InvalidPDFException(k.message);break;case"MissingPDFException":O=new _util.MissingPDFException(k.message);break;case"UnexpectedResponseException":O=new _util.UnexpectedResponseException(k.message,k.status);break;case"UnknownErrorException":O=new _util.UnknownErrorException(k.message,k.details);break;default:(0,_util.unreachable)("DocException - expected a valid Error.")}M._capability.reject(O)}),B.on("PasswordRequest",k=>{if(Ct(this,C,new _util.PromiseCapability),M.onPassword){const O=H=>{H instanceof Error?He(this,C).reject(H):He(this,C).resolve({password:H})};try{M.onPassword(O,k.code)}catch(H){He(this,C).reject(H)}}else He(this,C).reject(new _util.PasswordException(k.message,k.code));return He(this,C).promise}),B.on("DataLoaded",k=>{var O;(O=M.onProgress)==null||O.call(M,{loaded:k.length,total:k.length}),this.downloadInfoCapability.resolve(k)}),B.on("StartRenderPage",k=>{if(this.destroyed)return;He(this,f).get(k.pageIndex)._startRenderPage(k.transparency,k.cacheKey)}),B.on("commonobj",([k,O,H])=>{var j;if(!this.destroyed&&!this.commonObjs.has(k))switch(O){case"Font":const q=this._params;if("error"in H){const U=H.error;(0,_util.warn)(`Error during font loading: ${U}`),this.commonObjs.resolve(k,U);break}const L=q.pdfBug&&((j=globalThis.FontInspector)!=null&&j.enabled)?(U,N)=>globalThis.FontInspector.fontAdded(U,N):null,F=new _font_loader.FontFaceObject(H,{isEvalSupported:q.isEvalSupported,disableFontFace:q.disableFontFace,ignoreErrors:q.ignoreErrors,inspectFont:L});this.fontLoader.bind(F).catch(U=>B.sendWithPromise("FontFallback",{id:k})).finally(()=>{!q.fontExtraProperties&&F.data&&(F.data=null),this.commonObjs.resolve(k,F)});break;case"FontPath":case"Image":case"Pattern":this.commonObjs.resolve(k,H);break;default:throw new Error(`Got unknown common object type ${O}`)}}),B.on("obj",([k,O,H,j])=>{var L;if(this.destroyed)return;const q=He(this,f).get(O);if(!q.objs.has(k))switch(H){case"Image":if(q.objs.resolve(k,j),j){let F;if(j.bitmap){const{width:U,height:N}=j;F=U*N*4}else F=((L=j.data)==null?void 0:L.length)||0;F>_util.MAX_IMAGE_SIZE_TO_CACHE&&(q._maybeCleanupAfterRender=!0)}break;case"Pattern":q.objs.resolve(k,j);break;default:throw new Error(`Got unknown object type ${H}`)}}),B.on("DocProgress",k=>{var O;this.destroyed||(O=M.onProgress)==null||O.call(M,{loaded:k.loaded,total:k.total})}),B.on("FetchBuiltInCMap",k=>this.destroyed?Promise.reject(new Error("Worker was destroyed.")):this.cMapReaderFactory?this.cMapReaderFactory.fetch(k):Promise.reject(new Error("CMapReaderFactory not initialized, see the `useWorkerFetch` parameter."))),B.on("FetchStandardFontData",k=>this.destroyed?Promise.reject(new Error("Worker was destroyed.")):this.standardFontDataFactory?this.standardFontDataFactory.fetch(k):Promise.reject(new Error("StandardFontDataFactory not initialized, see the `useWorkerFetch` parameter.")))}getData(){return this.messageHandler.sendWithPromise("GetData",null)}saveDocument(){var k;this.annotationStorage.size<=0&&(0,_util.warn)("saveDocument called while `annotationStorage` is empty, please use the getData-method instead.");const{map:B,transfers:M}=this.annotationStorage.serializable;return this.messageHandler.sendWithPromise("SaveDocument",{isPureXfa:!!this._htmlForXfa,numPages:this._numPages,annotationStorage:B,filename:((k=this._fullReader)==null?void 0:k.filename)??null},M).finally(()=>{this.annotationStorage.resetModified()})}getPage(B){if(!Number.isInteger(B)||B<=0||B>this._numPages)return Promise.reject(new Error("Invalid page request."));const M=B-1,k=He(this,m).get(M);if(k)return k;const O=this.messageHandler.sendWithPromise("GetPage",{pageIndex:M}).then(H=>{if(this.destroyed)throw new Error("Transport destroyed");const j=new PDFPageProxy(M,H,this,this._params.pdfBug);return He(this,f).set(M,j),j});return He(this,m).set(M,O),O}getPageIndex(B){return typeof B!="object"||B===null||!Number.isInteger(B.num)||B.num<0||!Number.isInteger(B.gen)||B.gen<0?Promise.reject(new Error("Invalid pageIndex request.")):this.messageHandler.sendWithPromise("GetPageIndex",{num:B.num,gen:B.gen})}getAnnotations(B,M){return this.messageHandler.sendWithPromise("GetAnnotations",{pageIndex:B,intent:M})}getFieldObjects(){return it(this,S,go).call(this,"GetFieldObjects")}hasJSActions(){return it(this,S,go).call(this,"HasJSActions")}getCalculationOrderIds(){return this.messageHandler.sendWithPromise("GetCalculationOrderIds",null)}getDestinations(){return this.messageHandler.sendWithPromise("GetDestinations",null)}getDestination(B){return typeof B!="string"?Promise.reject(new Error("Invalid destination request.")):this.messageHandler.sendWithPromise("GetDestination",{id:B})}getPageLabels(){return this.messageHandler.sendWithPromise("GetPageLabels",null)}getPageLayout(){return this.messageHandler.sendWithPromise("GetPageLayout",null)}getPageMode(){return this.messageHandler.sendWithPromise("GetPageMode",null)}getViewerPreferences(){return this.messageHandler.sendWithPromise("GetViewerPreferences",null)}getOpenAction(){return this.messageHandler.sendWithPromise("GetOpenAction",null)}getAttachments(){return this.messageHandler.sendWithPromise("GetAttachments",null)}getDocJSActions(){return it(this,S,go).call(this,"GetDocJSActions")}getPageJSActions(B){return this.messageHandler.sendWithPromise("GetPageJSActions",{pageIndex:B})}getStructTree(B){return this.messageHandler.sendWithPromise("GetStructTree",{pageIndex:B})}getOutline(){return this.messageHandler.sendWithPromise("GetOutline",null)}getOptionalContentConfig(){return this.messageHandler.sendWithPromise("GetOptionalContentConfig",null).then(B=>new _optional_content_config.OptionalContentConfig(B))}getPermissions(){return this.messageHandler.sendWithPromise("GetPermissions",null)}getMetadata(){const B="GetMetadata",M=He(this,y).get(B);if(M)return M;const k=this.messageHandler.sendWithPromise(B,null).then(O=>{var H,j;return{info:O[0],metadata:O[1]?new _metadata.Metadata(O[1]):null,contentDispositionFilename:((H=this._fullReader)==null?void 0:H.filename)??null,contentLength:((j=this._fullReader)==null?void 0:j.contentLength)??null}});return He(this,y).set(B,k),k}getMarkInfo(){return this.messageHandler.sendWithPromise("GetMarkInfo",null)}async startCleanup(B=!1){if(!this.destroyed){await this.messageHandler.sendWithPromise("Cleanup",null);for(const M of He(this,f).values())if(!M.cleanup())throw new Error(`startCleanup: Page ${M.pageNumber} is currently rendering.`);this.commonObjs.clear(),B||this.fontLoader.clear(),He(this,y).clear(),this.filterFactory.destroy(!0)}}get loadingParams(){const{disableAutoFetch:B,enableXfa:M}=this._params;return(0,_util.shadow)(this,"loadingParams",{disableAutoFetch:B,enableXfa:M})}}y=new WeakMap,f=new WeakMap,m=new WeakMap,C=new WeakMap,S=new WeakSet,go=function(B,M=null){const k=He(this,y).get(B);if(k)return k;const O=this.messageHandler.sendWithPromise(B,M);return He(this,y).set(B,O),O};class PDFObjects{constructor(){bt(this,I);bt(this,_,Object.create(null))}get(B,M=null){if(M){const O=it(this,I,Gs).call(this,B);return O.capability.promise.then(()=>M(O.data)),null}const k=He(this,_)[B];if(!(k!=null&&k.capability.settled))throw new Error(`Requesting object that isn't resolved yet ${B}.`);return k.data}has(B){const M=He(this,_)[B];return(M==null?void 0:M.capability.settled)||!1}resolve(B,M=null){const k=it(this,I,Gs).call(this,B);k.data=M,k.capability.resolve()}clear(){var B;for(const M in He(this,_)){const{data:k}=He(this,_)[M];(B=k==null?void 0:k.bitmap)==null||B.close()}Ct(this,_,Object.create(null))}}_=new WeakMap,I=new WeakSet,Gs=function(B){var M;return(M=He(this,_))[B]||(M[B]={capability:new _util.PromiseCapability,data:null})};class RenderTask{constructor(B){bt(this,P,null);Ct(this,P,B),this.onContinue=null}get promise(){return He(this,P).capability.promise}cancel(B=0){He(this,P).cancel(null,B)}get separateAnnots(){const{separateAnnots:B}=He(this,P).operatorList;if(!B)return!1;const{annotationCanvasMap:M}=He(this,P);return B.form||B.canvas&&(M==null?void 0:M.size)>0}}P=new WeakMap,exports.RenderTask=RenderTask;const R=class R{constructor({callback:B,params:M,objs:k,commonObjs:O,annotationCanvasMap:H,operatorList:j,pageIndex:q,canvasFactory:L,filterFactory:F,useRequestAnimationFrame:U=!1,pdfBug:N=!1,pageColors:D=null}){this.callback=B,this.params=M,this.objs=k,this.commonObjs=O,this.annotationCanvasMap=H,this.operatorListIdx=null,this.operatorList=j,this._pageIndex=q,this.canvasFactory=L,this.filterFactory=F,this._pdfBug=N,this.pageColors=D,this.running=!1,this.graphicsReadyCallback=null,this.graphicsReady=!1,this._useRequestAnimationFrame=U===!0&&typeof window<"u",this.cancelled=!1,this.capability=new _util.PromiseCapability,this.task=new RenderTask(this),this._cancelBound=this.cancel.bind(this),this._continueBound=this._continue.bind(this),this._scheduleNextBound=this._scheduleNext.bind(this),this._nextBound=this._next.bind(this),this._canvas=M.canvasContext.canvas}get completed(){return this.capability.promise.catch(function(){})}initializeGraphics({transparency:B=!1,optionalContentConfig:M}){var q,L;if(this.cancelled)return;if(this._canvas){if(He(R,E).has(this._canvas))throw new Error("Cannot use the same canvas during multiple render() operations. Use different canvas or ensure previous operations were cancelled or completed.");He(R,E).add(this._canvas)}this._pdfBug&&((q=globalThis.StepperManager)!=null&&q.enabled)&&(this.stepper=globalThis.StepperManager.create(this._pageIndex),this.stepper.init(this.operatorList),this.stepper.nextBreakPoint=this.stepper.getNextBreakPoint());const{canvasContext:k,viewport:O,transform:H,background:j}=this.params;this.gfx=new _canvas.CanvasGraphics(k,this.commonObjs,this.objs,this.canvasFactory,this.filterFactory,{optionalContentConfig:M},this.annotationCanvasMap,this.pageColors),this.gfx.beginDrawing({transform:H,viewport:O,transparency:B,background:j}),this.operatorListIdx=0,this.graphicsReady=!0,(L=this.graphicsReadyCallback)==null||L.call(this)}cancel(B=null,M=0){var k;this.running=!1,this.cancelled=!0,(k=this.gfx)==null||k.endDrawing(),He(R,E).delete(this._canvas),this.callback(B||new _display_utils.RenderingCancelledException(`Rendering cancelled, page ${this._pageIndex+1}`,M))}operatorListChanged(){var B;if(!this.graphicsReady){this.graphicsReadyCallback||(this.graphicsReadyCallback=this._continueBound);return}(B=this.stepper)==null||B.updateOperatorList(this.operatorList),!this.running&&this._continue()}_continue(){this.running=!0,!this.cancelled&&(this.task.onContinue?this.task.onContinue(this._scheduleNextBound):this._scheduleNext())}_scheduleNext(){this._useRequestAnimationFrame?window.requestAnimationFrame(()=>{this._nextBound().catch(this._cancelBound)}):Promise.resolve().then(this._nextBound).catch(this._cancelBound)}async _next(){this.cancelled||(this.operatorListIdx=this.gfx.executeOperatorList(this.operatorList,this.operatorListIdx,this._continueBound,this.stepper),this.operatorListIdx===this.operatorList.argsArray.length&&(this.running=!1,this.operatorList.lastChunk&&(this.gfx.endDrawing(),He(R,E).delete(this._canvas),this.callback())))}};E=new WeakMap,bt(R,E,new WeakSet);let InternalRenderTask=R;const version="3.11.174";exports.version=version;const build="ce8716743";exports.build=build},(a,s,c)=>{var g,x,y,Su,m;Object.defineProperty(s,"__esModule",{value:!0}),s.SerializableEmpty=s.PrintAnnotationStorage=s.AnnotationStorage=void 0;var u=c(1),d=c(4),p=c(8);const v=Object.freeze({map:null,hash:"",transfers:void 0});s.SerializableEmpty=v;class A{constructor(){bt(this,y);bt(this,g,!1);bt(this,x,new Map);this.onSetModified=null,this.onResetModified=null,this.onAnnotationEditor=null}getValue(S,w){const _=He(this,x).get(S);return _===void 0?w:Object.assign(w,_)}getRawValue(S){return He(this,x).get(S)}remove(S){if(He(this,x).delete(S),He(this,x).size===0&&this.resetModified(),typeof this.onAnnotationEditor=="function"){for(const w of He(this,x).values())if(w instanceof d.AnnotationEditor)return;this.onAnnotationEditor(null)}}setValue(S,w){const _=He(this,x).get(S);let I=!1;if(_!==void 0)for(const[$,P]of Object.entries(w))_[$]!==P&&(I=!0,_[$]=P);else I=!0,He(this,x).set(S,w);I&&it(this,y,Su).call(this),w instanceof d.AnnotationEditor&&typeof this.onAnnotationEditor=="function"&&this.onAnnotationEditor(w.constructor._type)}has(S){return He(this,x).has(S)}getAll(){return He(this,x).size>0?(0,u.objectFromMap)(He(this,x)):null}setAll(S){for(const[w,_]of Object.entries(S))this.setValue(w,_)}get size(){return He(this,x).size}resetModified(){He(this,g)&&(Ct(this,g,!1),typeof this.onResetModified=="function"&&this.onResetModified())}get print(){return new b(this)}get serializable(){if(He(this,x).size===0)return v;const S=new Map,w=new p.MurmurHash3_64,_=[],I=Object.create(null);let $=!1;for(const[P,E]of He(this,x)){const R=E instanceof d.AnnotationEditor?E.serialize(!1,I):E;R&&(S.set(P,R),w.update(`${P}:${JSON.stringify(R)}`),$||($=!!R.bitmap))}if($)for(const P of S.values())P.bitmap&&_.push(P.bitmap);return S.size>0?{map:S,hash:w.hexdigest(),transfers:_}:v}}g=new WeakMap,x=new WeakMap,y=new WeakSet,Su=function(){He(this,g)||(Ct(this,g,!0),typeof this.onSetModified=="function"&&this.onSetModified())},s.AnnotationStorage=A;class b extends A{constructor(w){super();bt(this,m);const{map:_,hash:I,transfers:$}=w.serializable,P=structuredClone(_,$?{transfer:$}:null);Ct(this,m,{map:P,hash:I,transfers:$})}get print(){(0,u.unreachable)("Should not call PrintAnnotationStorage.print")}get serializable(){return He(this,m)}}m=new WeakMap,s.PrintAnnotationStorage=b},(a,s,c)=>{var b,g,x,y,f,m,C,S,w,_,I,$,P,E,R,Vs,Qs,M,qs,Ys,$u,_u,Iu,Ks,Pu;Object.defineProperty(s,"__esModule",{value:!0}),s.AnnotationEditor=void 0;var u=c(5),d=c(1),p=c(6);const U=class U{constructor(D){bt(this,R);bt(this,b,"");bt(this,g,!1);bt(this,x,null);bt(this,y,null);bt(this,f,null);bt(this,m,!1);bt(this,C,null);bt(this,S,this.focusin.bind(this));bt(this,w,this.focusout.bind(this));bt(this,_,!1);bt(this,I,!1);bt(this,$,!1);yr(this,"_initialOptions",Object.create(null));yr(this,"_uiManager",null);yr(this,"_focusEventsAllowed",!0);yr(this,"_l10nPromise",null);bt(this,P,!1);bt(this,E,U._zIndex++);this.constructor===U&&(0,d.unreachable)("Cannot initialize AnnotationEditor."),this.parent=D.parent,this.id=D.id,this.width=this.height=null,this.pageIndex=D.parent.pageIndex,this.name=D.name,this.div=null,this._uiManager=D.uiManager,this.annotationElementId=null,this._willKeepAspectRatio=!1,this._initialOptions.isCentered=D.isCentered,this._structTreeParentId=null;const{rotation:W,rawDims:{pageWidth:Z,pageHeight:Q,pageX:Y,pageY:J}}=this.parent.viewport;this.rotation=W,this.pageRotation=(360+W-this._uiManager.viewParameters.rotation)%360,this.pageDimensions=[Z,Q],this.pageTranslation=[Y,J];const[ee,re]=this.parentDimensions;this.x=D.x/ee,this.y=D.y/re,this.isAttachedToDOM=!1,this.deleted=!1}get editorType(){return Object.getPrototypeOf(this).constructor._type}static get _defaultLineColor(){return(0,d.shadow)(this,"_defaultLineColor",this._colorManager.getHexCode("CanvasText"))}static deleteAnnotationElement(D){const W=new A({id:D.parent.getNextId(),parent:D.parent,uiManager:D._uiManager});W.annotationElementId=D.annotationElementId,W.deleted=!0,W._uiManager.addToAnnotationStorage(W)}static initialize(D,W=null){if(U._l10nPromise||(U._l10nPromise=new Map(["editor_alt_text_button_label","editor_alt_text_edit_button_label","editor_alt_text_decorative_tooltip"].map(Q=>[Q,D.get(Q)]))),W!=null&&W.strings)for(const Q of W.strings)U._l10nPromise.set(Q,D.get(Q));if(U._borderLineWidth!==-1)return;const Z=getComputedStyle(document.documentElement);U._borderLineWidth=parseFloat(Z.getPropertyValue("--outline-width"))||0}static updateDefaultParams(D,W){}static get defaultPropertiesToUpdate(){return[]}static isHandlingMimeForPasting(D){return!1}static paste(D,W){(0,d.unreachable)("Not implemented")}get propertiesToUpdate(){return[]}get _isDraggable(){return He(this,P)}set _isDraggable(D){var W;Ct(this,P,D),(W=this.div)==null||W.classList.toggle("draggable",D)}center(){const[D,W]=this.pageDimensions;switch(this.parentRotation){case 90:this.x-=this.height*W/(D*2),this.y+=this.width*D/(W*2);break;case 180:this.x+=this.width/2,this.y+=this.height/2;break;case 270:this.x+=this.height*W/(D*2),this.y-=this.width*D/(W*2);break;default:this.x-=this.width/2,this.y-=this.height/2;break}this.fixAndSetPosition()}addCommands(D){this._uiManager.addCommands(D)}get currentLayer(){return this._uiManager.currentLayer}setInBackground(){this.div.style.zIndex=0}setInForeground(){this.div.style.zIndex=He(this,E)}setParent(D){D!==null&&(this.pageIndex=D.pageIndex,this.pageDimensions=D.pageDimensions),this.parent=D}focusin(D){this._focusEventsAllowed&&(He(this,_)?Ct(this,_,!1):this.parent.setSelected(this))}focusout(D){var Z;if(!this._focusEventsAllowed||!this.isAttachedToDOM)return;const W=D.relatedTarget;W!=null&&W.closest(`#${this.id}`)||(D.preventDefault(),(Z=this.parent)!=null&&Z.isMultipleSelection||this.commitOrRemove())}commitOrRemove(){this.isEmpty()?this.remove():this.commit()}commit(){this.addToAnnotationStorage()}addToAnnotationStorage(){this._uiManager.addToAnnotationStorage(this)}setAt(D,W,Z,Q){const[Y,J]=this.parentDimensions;[Z,Q]=this.screenToPageTranslation(Z,Q),this.x=(D+Z)/Y,this.y=(W+Q)/J,this.fixAndSetPosition()}translate(D,W){it(this,R,Vs).call(this,this.parentDimensions,D,W)}translateInPage(D,W){it(this,R,Vs).call(this,this.pageDimensions,D,W),this.div.scrollIntoView({block:"nearest"})}drag(D,W){const[Z,Q]=this.parentDimensions;if(this.x+=D/Z,this.y+=W/Q,this.parent&&(this.x<0||this.x>1||this.y<0||this.y>1)){const{x:ae,y:V}=this.div.getBoundingClientRect();this.parent.findNewParent(this,ae,V)&&(this.x-=Math.floor(this.x),this.y-=Math.floor(this.y))}let{x:Y,y:J}=this;const[ee,re]=it(this,R,Qs).call(this);Y+=ee,J+=re,this.div.style.left=`${(100*Y).toFixed(2)}%`,this.div.style.top=`${(100*J).toFixed(2)}%`,this.div.scrollIntoView({block:"nearest"})}fixAndSetPosition(){const[D,W]=this.pageDimensions;let{x:Z,y:Q,width:Y,height:J}=this;switch(Y*=D,J*=W,Z*=D,Q*=W,this.rotation){case 0:Z=Math.max(0,Math.min(D-Y,Z)),Q=Math.max(0,Math.min(W-J,Q));break;case 90:Z=Math.max(0,Math.min(D-J,Z)),Q=Math.min(W,Math.max(Y,Q));break;case 180:Z=Math.min(D,Math.max(Y,Z)),Q=Math.min(W,Math.max(J,Q));break;case 270:Z=Math.min(D,Math.max(J,Z)),Q=Math.max(0,Math.min(W-Y,Q));break}this.x=Z/=D,this.y=Q/=W;const[ee,re]=it(this,R,Qs).call(this);Z+=ee,Q+=re;const{style:ae}=this.div;ae.left=`${(100*Z).toFixed(2)}%`,ae.top=`${(100*Q).toFixed(2)}%`,this.moveInDOM()}screenToPageTranslation(D,W){var Z;return it(Z=U,M,qs).call(Z,D,W,this.parentRotation)}pageTranslationToScreen(D,W){var Z;return it(Z=U,M,qs).call(Z,D,W,360-this.parentRotation)}get parentScale(){return this._uiManager.viewParameters.realScale}get parentRotation(){return(this._uiManager.viewParameters.rotation+this.pageRotation)%360}get parentDimensions(){const{parentScale:D,pageDimensions:[W,Z]}=this,Q=W*D,Y=Z*D;return d.FeatureTest.isCSSRoundSupported?[Math.round(Q),Math.round(Y)]:[Q,Y]}setDims(D,W){var Y;const[Z,Q]=this.parentDimensions;this.div.style.width=`${(100*D/Z).toFixed(2)}%`,He(this,m)||(this.div.style.height=`${(100*W/Q).toFixed(2)}%`),(Y=He(this,x))==null||Y.classList.toggle("small",D<U.SMALL_EDITOR_SIZE||W<U.SMALL_EDITOR_SIZE)}fixDims(){const{style:D}=this.div,{height:W,width:Z}=D,Q=Z.endsWith("%"),Y=!He(this,m)&&W.endsWith("%");if(Q&&Y)return;const[J,ee]=this.parentDimensions;Q||(D.width=`${(100*parseFloat(Z)/J).toFixed(2)}%`),!He(this,m)&&!Y&&(D.height=`${(100*parseFloat(W)/ee).toFixed(2)}%`)}getInitialTranslation(){return[0,0]}async addAltTextButton(){if(He(this,x))return;const D=Ct(this,x,document.createElement("button"));D.className="altText";const W=await U._l10nPromise.get("editor_alt_text_button_label");D.textContent=W,D.setAttribute("aria-label",W),D.tabIndex="0",D.addEventListener("contextmenu",p.noContextMenu),D.addEventListener("pointerdown",Z=>Z.stopPropagation()),D.addEventListener("click",Z=>{Z.preventDefault(),this._uiManager.editAltText(this)},{capture:!0}),D.addEventListener("keydown",Z=>{Z.target===D&&Z.key==="Enter"&&(Z.preventDefault(),this._uiManager.editAltText(this))}),it(this,R,Ks).call(this),this.div.append(D),U.SMALL_EDITOR_SIZE||(U.SMALL_EDITOR_SIZE=Math.min(128,Math.round(D.getBoundingClientRect().width*1.4)))}getClientDimensions(){return this.div.getBoundingClientRect()}get altTextData(){return{altText:He(this,b),decorative:He(this,g)}}set altTextData({altText:D,decorative:W}){He(this,b)===D&&He(this,g)===W||(Ct(this,b,D),Ct(this,g,W),it(this,R,Ks).call(this))}render(){this.div=document.createElement("div"),this.div.setAttribute("data-editor-rotation",(360-this.rotation)%360),this.div.className=this.name,this.div.setAttribute("id",this.id),this.div.setAttribute("tabIndex",0),this.setInForeground(),this.div.addEventListener("focusin",He(this,S)),this.div.addEventListener("focusout",He(this,w));const[D,W]=this.parentDimensions;this.parentRotation%180!==0&&(this.div.style.maxWidth=`${(100*W/D).toFixed(2)}%`,this.div.style.maxHeight=`${(100*D/W).toFixed(2)}%`);const[Z,Q]=this.getInitialTranslation();return this.translate(Z,Q),(0,u.bindEvents)(this,this.div,["pointerdown"]),this.div}pointerdown(D){const{isMac:W}=d.FeatureTest.platform;if(D.button!==0||D.ctrlKey&&W){D.preventDefault();return}Ct(this,_,!0),it(this,R,Pu).call(this,D)}moveInDOM(){var D;(D=this.parent)==null||D.moveEditorInDOM(this)}_setParentAndPosition(D,W,Z){D.changeParent(this),this.x=W,this.y=Z,this.fixAndSetPosition()}getRect(D,W){const Z=this.parentScale,[Q,Y]=this.pageDimensions,[J,ee]=this.pageTranslation,re=D/Z,ae=W/Z,V=this.x*Q,K=this.y*Y,te=this.width*Q,ie=this.height*Y;switch(this.rotation){case 0:return[V+re+J,Y-K-ae-ie+ee,V+re+te+J,Y-K-ae+ee];case 90:return[V+ae+J,Y-K+re+ee,V+ae+ie+J,Y-K+re+te+ee];case 180:return[V-re-te+J,Y-K+ae+ee,V-re+J,Y-K+ae+ie+ee];case 270:return[V-ae-ie+J,Y-K-re-te+ee,V-ae+J,Y-K-re+ee];default:throw new Error("Invalid rotation")}}getRectInCurrentCoords(D,W){const[Z,Q,Y,J]=D,ee=Y-Z,re=J-Q;switch(this.rotation){case 0:return[Z,W-J,ee,re];case 90:return[Z,W-Q,re,ee];case 180:return[Y,W-Q,ee,re];case 270:return[Y,W-J,re,ee];default:throw new Error("Invalid rotation")}}onceAdded(){}isEmpty(){return!1}enableEditMode(){Ct(this,$,!0)}disableEditMode(){Ct(this,$,!1)}isInEditMode(){return He(this,$)}shouldGetKeyboardEvents(){return!1}needsToBeRebuilt(){return this.div&&!this.isAttachedToDOM}rebuild(){var D,W;(D=this.div)==null||D.addEventListener("focusin",He(this,S)),(W=this.div)==null||W.addEventListener("focusout",He(this,w))}serialize(D=!1,W=null){(0,d.unreachable)("An editor must be serializable")}static deserialize(D,W,Z){const Q=new this.prototype.constructor({parent:W,id:W.getNextId(),uiManager:Z});Q.rotation=D.rotation;const[Y,J]=Q.pageDimensions,[ee,re,ae,V]=Q.getRectInCurrentCoords(D.rect,J);return Q.x=ee/Y,Q.y=re/J,Q.width=ae/Y,Q.height=V/J,Q}remove(){var D;this.div.removeEventListener("focusin",He(this,S)),this.div.removeEventListener("focusout",He(this,w)),this.isEmpty()||this.commit(),this.parent?this.parent.remove(this):this._uiManager.removeEditor(this),(D=He(this,x))==null||D.remove(),Ct(this,x,null),Ct(this,y,null)}get isResizable(){return!1}makeResizable(){this.isResizable&&(it(this,R,$u).call(this),He(this,C).classList.remove("hidden"))}select(){var D;this.makeResizable(),(D=this.div)==null||D.classList.add("selectedEditor")}unselect(){var D,W,Z;(D=He(this,C))==null||D.classList.add("hidden"),(W=this.div)==null||W.classList.remove("selectedEditor"),(Z=this.div)!=null&&Z.contains(document.activeElement)&&this._uiManager.currentLayer.div.focus()}updateParams(D,W){}disableEditing(){He(this,x)&&(He(this,x).hidden=!0)}enableEditing(){He(this,x)&&(He(this,x).hidden=!1)}enterInEditMode(){}get contentDiv(){return this.div}get isEditing(){return He(this,I)}set isEditing(D){Ct(this,I,D),this.parent&&(D?(this.parent.setSelected(this),this.parent.setActiveEditor(this)):this.parent.setActiveEditor(null))}setAspectRatio(D,W){Ct(this,m,!0);const Z=D/W,{style:Q}=this.div;Q.aspectRatio=Z,Q.height="auto"}static get MIN_SIZE(){return 16}};b=new WeakMap,g=new WeakMap,x=new WeakMap,y=new WeakMap,f=new WeakMap,m=new WeakMap,C=new WeakMap,S=new WeakMap,w=new WeakMap,_=new WeakMap,I=new WeakMap,$=new WeakMap,P=new WeakMap,E=new WeakMap,R=new WeakSet,Vs=function([D,W],Z,Q){[Z,Q]=this.screenToPageTranslation(Z,Q),this.x+=Z/D,this.y+=Q/W,this.fixAndSetPosition()},Qs=function(){const[D,W]=this.parentDimensions,{_borderLineWidth:Z}=U,Q=Z/D,Y=Z/W;switch(this.rotation){case 90:return[-Q,Y];case 180:return[Q,Y];case 270:return[Q,-Y];default:return[-Q,-Y]}},M=new WeakSet,qs=function(D,W,Z){switch(Z){case 90:return[W,-D];case 180:return[-D,-W];case 270:return[-W,D];default:return[D,W]}},Ys=function(D){switch(D){case 90:{const[W,Z]=this.pageDimensions;return[0,-W/Z,Z/W,0]}case 180:return[-1,0,0,-1];case 270:{const[W,Z]=this.pageDimensions;return[0,W/Z,-Z/W,0]}default:return[1,0,0,1]}},$u=function(){if(He(this,C))return;Ct(this,C,document.createElement("div")),He(this,C).classList.add("resizers");const D=["topLeft","topRight","bottomRight","bottomLeft"];this._willKeepAspectRatio||D.push("topMiddle","middleRight","bottomMiddle","middleLeft");for(const W of D){const Z=document.createElement("div");He(this,C).append(Z),Z.classList.add("resizer",W),Z.addEventListener("pointerdown",it(this,R,_u).bind(this,W)),Z.addEventListener("contextmenu",p.noContextMenu)}this.div.prepend(He(this,C))},_u=function(D,W){W.preventDefault();const{isMac:Z}=d.FeatureTest.platform;if(W.button!==0||W.ctrlKey&&Z)return;const Q=it(this,R,Iu).bind(this,D),Y=this._isDraggable;this._isDraggable=!1;const J={passive:!0,capture:!0};window.addEventListener("pointermove",Q,J);const ee=this.x,re=this.y,ae=this.width,V=this.height,K=this.parent.div.style.cursor,te=this.div.style.cursor;this.div.style.cursor=this.parent.div.style.cursor=window.getComputedStyle(W.target).cursor;const ie=()=>{this._isDraggable=Y,window.removeEventListener("pointerup",ie),window.removeEventListener("blur",ie),window.removeEventListener("pointermove",Q,J),this.parent.div.style.cursor=K,this.div.style.cursor=te;const ce=this.x,me=this.y,we=this.width,ve=this.height;ce===ee&&me===re&&we===ae&&ve===V||this.addCommands({cmd:()=>{this.width=we,this.height=ve,this.x=ce,this.y=me;const[ge,ue]=this.parentDimensions;this.setDims(ge*we,ue*ve),this.fixAndSetPosition()},undo:()=>{this.width=ae,this.height=V,this.x=ee,this.y=re;const[ge,ue]=this.parentDimensions;this.setDims(ge*ae,ue*V),this.fixAndSetPosition()},mustExec:!0})};window.addEventListener("pointerup",ie),window.addEventListener("blur",ie)},Iu=function(D,W){const[Z,Q]=this.parentDimensions,Y=this.x,J=this.y,ee=this.width,re=this.height,ae=U.MIN_SIZE/Z,V=U.MIN_SIZE/Q,K=ye=>Math.round(ye*1e4)/1e4,te=it(this,R,Ys).call(this,this.rotation),ie=(ye,Pe)=>[te[0]*ye+te[2]*Pe,te[1]*ye+te[3]*Pe],ce=it(this,R,Ys).call(this,360-this.rotation),me=(ye,Pe)=>[ce[0]*ye+ce[2]*Pe,ce[1]*ye+ce[3]*Pe];let we,ve,ge=!1,ue=!1;switch(D){case"topLeft":ge=!0,we=(ye,Pe)=>[0,0],ve=(ye,Pe)=>[ye,Pe];break;case"topMiddle":we=(ye,Pe)=>[ye/2,0],ve=(ye,Pe)=>[ye/2,Pe];break;case"topRight":ge=!0,we=(ye,Pe)=>[ye,0],ve=(ye,Pe)=>[0,Pe];break;case"middleRight":ue=!0,we=(ye,Pe)=>[ye,Pe/2],ve=(ye,Pe)=>[0,Pe/2];break;case"bottomRight":ge=!0,we=(ye,Pe)=>[ye,Pe],ve=(ye,Pe)=>[0,0];break;case"bottomMiddle":we=(ye,Pe)=>[ye/2,Pe],ve=(ye,Pe)=>[ye/2,0];break;case"bottomLeft":ge=!0,we=(ye,Pe)=>[0,Pe],ve=(ye,Pe)=>[ye,0];break;case"middleLeft":ue=!0,we=(ye,Pe)=>[0,Pe/2],ve=(ye,Pe)=>[ye,Pe/2];break}const se=we(ee,re),oe=ve(ee,re);let de=ie(...oe);const le=K(Y+de[0]),xe=K(J+de[1]);let Ce=1,$e=1,[Se,Ee]=this.screenToPageTranslation(W.movementX,W.movementY);if([Se,Ee]=me(Se/Z,Ee/Q),ge){const ye=Math.hypot(ee,re);Ce=$e=Math.max(Math.min(Math.hypot(oe[0]-se[0]-Se,oe[1]-se[1]-Ee)/ye,1/ee,1/re),ae/ee,V/re)}else ue?Ce=Math.max(ae,Math.min(1,Math.abs(oe[0]-se[0]-Se)))/ee:$e=Math.max(V,Math.min(1,Math.abs(oe[1]-se[1]-Ee)))/re;const Ae=K(ee*Ce),pe=K(re*$e);de=ie(...ve(Ae,pe));const he=le-de[0],Ie=xe-de[1];this.width=Ae,this.height=pe,this.x=he,this.y=Ie,this.setDims(Z*Ae,Q*pe),this.fixAndSetPosition()},Ks=async function(){var Z;const D=He(this,x);if(!D)return;if(!He(this,b)&&!He(this,g)){D.classList.remove("done"),(Z=He(this,y))==null||Z.remove();return}U._l10nPromise.get("editor_alt_text_edit_button_label").then(Q=>{D.setAttribute("aria-label",Q)});let W=He(this,y);if(!W){Ct(this,y,W=document.createElement("span")),W.className="tooltip",W.setAttribute("role","tooltip");const Q=W.id=`alt-text-tooltip-${this.id}`;D.setAttribute("aria-describedby",Q);const Y=100;D.addEventListener("mouseenter",()=>{Ct(this,f,setTimeout(()=>{Ct(this,f,null),He(this,y).classList.add("show"),this._uiManager._eventBus.dispatch("reporttelemetry",{source:this,details:{type:"editing",subtype:this.editorType,data:{action:"alt_text_tooltip"}}})},Y))}),D.addEventListener("mouseleave",()=>{var J;clearTimeout(He(this,f)),Ct(this,f,null),(J=He(this,y))==null||J.classList.remove("show")})}D.classList.add("done"),W.innerText=He(this,g)?await U._l10nPromise.get("editor_alt_text_decorative_tooltip"):He(this,b),W.parentNode||D.append(W)},Pu=function(D){if(!this._isDraggable)return;const W=this._uiManager.isSelected(this);this._uiManager.setUpDragSession();let Z,Q;W&&(Z={passive:!0,capture:!0},Q=J=>{const[ee,re]=this.screenToPageTranslation(J.movementX,J.movementY);this._uiManager.dragSelectedEditors(ee,re)},window.addEventListener("pointermove",Q,Z));const Y=()=>{if(window.removeEventListener("pointerup",Y),window.removeEventListener("blur",Y),W&&window.removeEventListener("pointermove",Q,Z),Ct(this,_,!1),!this._uiManager.endDragSession()){const{isMac:J}=d.FeatureTest.platform;D.ctrlKey&&!J||D.shiftKey||D.metaKey&&J?this.parent.toggleSelected(this):this.parent.setSelected(this)}};window.addEventListener("pointerup",Y),window.addEventListener("blur",Y)},bt(U,M),yr(U,"_borderLineWidth",-1),yr(U,"_colorManager",new u.ColorManager),yr(U,"_zIndex",1),yr(U,"SMALL_EDITOR_SIZE",0);let v=U;s.AnnotationEditor=v;class A extends v{constructor(D){super(D),this.annotationElementId=D.annotationElementId,this.deleted=!0}serialize(){return{id:this.annotationElementId,deleted:!0,pageIndex:this.pageIndex}}}},(a,s,c)=>{var m,C,S,w,_,Xs,P,E,R,T,B,Tu,O,H,j,q,L,F,U,N,D,W,Z,Q,Y,J,ee,re,ae,V,K,te,ie,ce,me,we,ve,ge,ue,se,oe,de,le,xe,Ce,$e,Se,Ru,Zs,Js,mo,el,tl,_n,pi,Bu,Mu,rl,gi,nl;Object.defineProperty(s,"__esModule",{value:!0}),s.KeyboardManager=s.CommandManager=s.ColorManager=s.AnnotationEditorUIManager=void 0,s.bindEvents=p,s.opacityToHex=v;var u=c(1),d=c(6);function p(Te,ke,De){for(const Re of De)ke.addEventListener(Re,Te[Re].bind(Te))}function v(Te){return Math.round(Math.min(255,Math.max(1,255*Te))).toString(16).padStart(2,"0")}class A{constructor(){bt(this,m,0)}getId(){return`${u.AnnotationEditorPrefix}${hi(this,m)._++}`}}m=new WeakMap;const $=class ${constructor(){bt(this,_);bt(this,C,(0,u.getUuid)());bt(this,S,0);bt(this,w,null)}static get _isSVGFittingCanvas(){const ke='data:image/svg+xml;charset=UTF-8,<svg viewBox="0 0 1 1" width="1" height="1" xmlns="http://www.w3.org/2000/svg"><rect width="1" height="1" style="fill:red;"/></svg>',Re=new OffscreenCanvas(1,3).getContext("2d"),Ge=new Image;Ge.src=ke;const Ve=Ge.decode().then(()=>(Re.drawImage(Ge,0,0,1,1,0,0,1,3),new Uint32Array(Re.getImageData(0,0,1,1).data.buffer)[0]===0));return(0,u.shadow)(this,"_isSVGFittingCanvas",Ve)}async getFromFile(ke){const{lastModified:De,name:Re,size:Ge,type:Ve}=ke;return it(this,_,Xs).call(this,`${De}_${Re}_${Ge}_${Ve}`,ke)}async getFromUrl(ke){return it(this,_,Xs).call(this,ke,ke)}async getFromId(ke){He(this,w)||Ct(this,w,new Map);const De=He(this,w).get(ke);return De?De.bitmap?(De.refCounter+=1,De):De.file?this.getFromFile(De.file):this.getFromUrl(De.url):null}getSvgUrl(ke){const De=He(this,w).get(ke);return De!=null&&De.isSvg?De.svgUrl:null}deleteId(ke){He(this,w)||Ct(this,w,new Map);const De=He(this,w).get(ke);De&&(De.refCounter-=1,De.refCounter===0&&(De.bitmap=null))}isValidId(ke){return ke.startsWith(`image_${He(this,C)}_`)}};C=new WeakMap,S=new WeakMap,w=new WeakMap,_=new WeakSet,Xs=async function(ke,De){He(this,w)||Ct(this,w,new Map);let Re=He(this,w).get(ke);if(Re===null)return null;if(Re!=null&&Re.bitmap)return Re.refCounter+=1,Re;try{Re||(Re={bitmap:null,id:`image_${He(this,C)}_${hi(this,S)._++}`,refCounter:0,isSvg:!1});let Ge;if(typeof De=="string"){Re.url=De;const Ve=await fetch(De);if(!Ve.ok)throw new Error(Ve.statusText);Ge=await Ve.blob()}else Ge=Re.file=De;if(Ge.type==="image/svg+xml"){const Ve=$._isSVGFittingCanvas,Xe=new FileReader,We=new Image,ze=new Promise((Qe,et)=>{We.onload=()=>{Re.bitmap=We,Re.isSvg=!0,Qe()},Xe.onload=async()=>{const Ze=Re.svgUrl=Xe.result;We.src=await Ve?`${Ze}#svgView(preserveAspectRatio(none))`:Ze},We.onerror=Xe.onerror=et});Xe.readAsDataURL(Ge),await ze}else Re.bitmap=await createImageBitmap(Ge);Re.refCounter=1}catch(Ge){console.error(Ge),Re=null}return He(this,w).set(ke,Re),Re&&He(this,w).set(Re.id,Re),Re};let b=$;class g{constructor(ke=128){bt(this,P,[]);bt(this,E,!1);bt(this,R);bt(this,T,-1);Ct(this,R,ke)}add({cmd:ke,undo:De,mustExec:Re,type:Ge=NaN,overwriteIfSameType:Ve=!1,keepUndo:Xe=!1}){if(Re&&ke(),He(this,E))return;const We={cmd:ke,undo:De,type:Ge};if(He(this,T)===-1){He(this,P).length>0&&(He(this,P).length=0),Ct(this,T,0),He(this,P).push(We);return}if(Ve&&He(this,P)[He(this,T)].type===Ge){Xe&&(We.undo=He(this,P)[He(this,T)].undo),He(this,P)[He(this,T)]=We;return}const ze=He(this,T)+1;ze===He(this,R)?He(this,P).splice(0,1):(Ct(this,T,ze),ze<He(this,P).length&&He(this,P).splice(ze)),He(this,P).push(We)}undo(){He(this,T)!==-1&&(Ct(this,E,!0),He(this,P)[He(this,T)].undo(),Ct(this,E,!1),Ct(this,T,He(this,T)-1))}redo(){He(this,T)<He(this,P).length-1&&(Ct(this,T,He(this,T)+1),Ct(this,E,!0),He(this,P)[He(this,T)].cmd(),Ct(this,E,!1))}hasSomethingToUndo(){return He(this,T)!==-1}hasSomethingToRedo(){return He(this,T)<He(this,P).length-1}destroy(){Ct(this,P,null)}}P=new WeakMap,E=new WeakMap,R=new WeakMap,T=new WeakMap,s.CommandManager=g;class x{constructor(ke){bt(this,B);this.buffer=[],this.callbacks=new Map,this.allKeys=new Set;const{isMac:De}=u.FeatureTest.platform;for(const[Re,Ge,Ve={}]of ke)for(const Xe of Re){const We=Xe.startsWith("mac+");De&&We?(this.callbacks.set(Xe.slice(4),{callback:Ge,options:Ve}),this.allKeys.add(Xe.split("+").at(-1))):!De&&!We&&(this.callbacks.set(Xe,{callback:Ge,options:Ve}),this.allKeys.add(Xe.split("+").at(-1)))}}exec(ke,De){if(!this.allKeys.has(De.key))return;const Re=this.callbacks.get(it(this,B,Tu).call(this,De));if(!Re)return;const{callback:Ge,options:{bubbles:Ve=!1,args:Xe=[],checker:We=null}}=Re;We&&!We(ke,De)||(Ge.bind(ke,...Xe)(),Ve||(De.stopPropagation(),De.preventDefault()))}}B=new WeakSet,Tu=function(ke){ke.altKey&&this.buffer.push("alt"),ke.ctrlKey&&this.buffer.push("ctrl"),ke.metaKey&&this.buffer.push("meta"),ke.shiftKey&&this.buffer.push("shift"),this.buffer.push(ke.key);const De=this.buffer.join("+");return this.buffer.length=0,De},s.KeyboardManager=x;const k=class k{get _colors(){const ke=new Map([["CanvasText",null],["Canvas",null]]);return(0,d.getColorValues)(ke),(0,u.shadow)(this,"_colors",ke)}convert(ke){const De=(0,d.getRGB)(ke);if(!window.matchMedia("(forced-colors: active)").matches)return De;for(const[Re,Ge]of this._colors)if(Ge.every((Ve,Xe)=>Ve===De[Xe]))return k._colorsMapping.get(Re);return De}getHexCode(ke){const De=this._colors.get(ke);return De?u.Util.makeHexColor(...De):ke}};yr(k,"_colorsMapping",new Map([["CanvasText",[0,0,0]],["Canvas",[255,255,255]]]));let y=k;s.ColorManager=y;const Ye=class Ye{constructor(ke,De,Re,Ge,Ve,Xe){bt(this,Se);bt(this,O,null);bt(this,H,new Map);bt(this,j,new Map);bt(this,q,null);bt(this,L,null);bt(this,F,new g);bt(this,U,0);bt(this,N,new Set);bt(this,D,null);bt(this,W,null);bt(this,Z,new Set);bt(this,Q,null);bt(this,Y,new A);bt(this,J,!1);bt(this,ee,!1);bt(this,re,null);bt(this,ae,u.AnnotationEditorType.NONE);bt(this,V,new Set);bt(this,K,null);bt(this,te,this.blur.bind(this));bt(this,ie,this.focus.bind(this));bt(this,ce,this.copy.bind(this));bt(this,me,this.cut.bind(this));bt(this,we,this.paste.bind(this));bt(this,ve,this.keydown.bind(this));bt(this,ge,this.onEditingAction.bind(this));bt(this,ue,this.onPageChanging.bind(this));bt(this,se,this.onScaleChanging.bind(this));bt(this,oe,this.onRotationChanging.bind(this));bt(this,de,{isEditing:!1,isEmpty:!0,hasSomethingToUndo:!1,hasSomethingToRedo:!1,hasSelectedEditor:!1});bt(this,le,[0,0]);bt(this,xe,null);bt(this,Ce,null);bt(this,$e,null);Ct(this,Ce,ke),Ct(this,$e,De),Ct(this,q,Re),this._eventBus=Ge,this._eventBus._on("editingaction",He(this,ge)),this._eventBus._on("pagechanging",He(this,ue)),this._eventBus._on("scalechanging",He(this,se)),this._eventBus._on("rotationchanging",He(this,oe)),Ct(this,L,Ve.annotationStorage),Ct(this,Q,Ve.filterFactory),Ct(this,K,Xe),this.viewParameters={realScale:d.PixelsPerInch.PDF_TO_CSS_UNITS,rotation:0}}static get _keyboardManager(){const ke=Ye.prototype,De=Ve=>{const{activeElement:Xe}=document;return Xe&&He(Ve,Ce).contains(Xe)&&Ve.hasSomethingToControl()},Re=this.TRANSLATE_SMALL,Ge=this.TRANSLATE_BIG;return(0,u.shadow)(this,"_keyboardManager",new x([[["ctrl+a","mac+meta+a"],ke.selectAll],[["ctrl+z","mac+meta+z"],ke.undo],[["ctrl+y","ctrl+shift+z","mac+meta+shift+z","ctrl+shift+Z","mac+meta+shift+Z"],ke.redo],[["Backspace","alt+Backspace","ctrl+Backspace","shift+Backspace","mac+Backspace","mac+alt+Backspace","mac+ctrl+Backspace","Delete","ctrl+Delete","shift+Delete","mac+Delete"],ke.delete],[["Escape","mac+Escape"],ke.unselectAll],[["ArrowLeft","mac+ArrowLeft"],ke.translateSelectedEditors,{args:[-Re,0],checker:De}],[["ctrl+ArrowLeft","mac+shift+ArrowLeft"],ke.translateSelectedEditors,{args:[-Ge,0],checker:De}],[["ArrowRight","mac+ArrowRight"],ke.translateSelectedEditors,{args:[Re,0],checker:De}],[["ctrl+ArrowRight","mac+shift+ArrowRight"],ke.translateSelectedEditors,{args:[Ge,0],checker:De}],[["ArrowUp","mac+ArrowUp"],ke.translateSelectedEditors,{args:[0,-Re],checker:De}],[["ctrl+ArrowUp","mac+shift+ArrowUp"],ke.translateSelectedEditors,{args:[0,-Ge],checker:De}],[["ArrowDown","mac+ArrowDown"],ke.translateSelectedEditors,{args:[0,Re],checker:De}],[["ctrl+ArrowDown","mac+shift+ArrowDown"],ke.translateSelectedEditors,{args:[0,Ge],checker:De}]]))}destroy(){it(this,Se,mo).call(this),it(this,Se,Zs).call(this),this._eventBus._off("editingaction",He(this,ge)),this._eventBus._off("pagechanging",He(this,ue)),this._eventBus._off("scalechanging",He(this,se)),this._eventBus._off("rotationchanging",He(this,oe));for(const ke of He(this,j).values())ke.destroy();He(this,j).clear(),He(this,H).clear(),He(this,Z).clear(),Ct(this,O,null),He(this,V).clear(),He(this,F).destroy(),He(this,q).destroy()}get hcmFilter(){return(0,u.shadow)(this,"hcmFilter",He(this,K)?He(this,Q).addHCMFilter(He(this,K).foreground,He(this,K).background):"none")}get direction(){return(0,u.shadow)(this,"direction",getComputedStyle(He(this,Ce)).direction)}editAltText(ke){var De;(De=He(this,q))==null||De.editAltText(this,ke)}onPageChanging({pageNumber:ke}){Ct(this,U,ke-1)}focusMainContainer(){He(this,Ce).focus()}findParent(ke,De){for(const Re of He(this,j).values()){const{x:Ge,y:Ve,width:Xe,height:We}=Re.div.getBoundingClientRect();if(ke>=Ge&&ke<=Ge+Xe&&De>=Ve&&De<=Ve+We)return Re}return null}disableUserSelect(ke=!1){He(this,$e).classList.toggle("noUserSelect",ke)}addShouldRescale(ke){He(this,Z).add(ke)}removeShouldRescale(ke){He(this,Z).delete(ke)}onScaleChanging({scale:ke}){this.commitOrRemove(),this.viewParameters.realScale=ke*d.PixelsPerInch.PDF_TO_CSS_UNITS;for(const De of He(this,Z))De.onScaleChanging()}onRotationChanging({pagesRotation:ke}){this.commitOrRemove(),this.viewParameters.rotation=ke}addToAnnotationStorage(ke){!ke.isEmpty()&&He(this,L)&&!He(this,L).has(ke.id)&&He(this,L).setValue(ke.id,ke)}blur(){if(!this.hasSelection)return;const{activeElement:ke}=document;for(const De of He(this,V))if(De.div.contains(ke)){Ct(this,re,[De,ke]),De._focusEventsAllowed=!1;break}}focus(){if(!He(this,re))return;const[ke,De]=He(this,re);Ct(this,re,null),De.addEventListener("focusin",()=>{ke._focusEventsAllowed=!0},{once:!0}),De.focus()}addEditListeners(){it(this,Se,Js).call(this),it(this,Se,el).call(this)}removeEditListeners(){it(this,Se,mo).call(this),it(this,Se,tl).call(this)}copy(ke){var Re;if(ke.preventDefault(),(Re=He(this,O))==null||Re.commitOrRemove(),!this.hasSelection)return;const De=[];for(const Ge of He(this,V)){const Ve=Ge.serialize(!0);Ve&&De.push(Ve)}De.length!==0&&ke.clipboardData.setData("application/pdfjs",JSON.stringify(De))}cut(ke){this.copy(ke),this.delete()}paste(ke){ke.preventDefault();const{clipboardData:De}=ke;for(const Ve of De.items)for(const Xe of He(this,W))if(Xe.isHandlingMimeForPasting(Ve.type)){Xe.paste(Ve,this.currentLayer);return}let Re=De.getData("application/pdfjs");if(!Re)return;try{Re=JSON.parse(Re)}catch(Ve){(0,u.warn)(`paste: "${Ve.message}".`);return}if(!Array.isArray(Re))return;this.unselectAll();const Ge=this.currentLayer;try{const Ve=[];for(const ze of Re){const Qe=Ge.deserialize(ze);if(!Qe)return;Ve.push(Qe)}const Xe=()=>{for(const ze of Ve)it(this,Se,rl).call(this,ze);it(this,Se,nl).call(this,Ve)},We=()=>{for(const ze of Ve)ze.remove()};this.addCommands({cmd:Xe,undo:We,mustExec:!0})}catch(Ve){(0,u.warn)(`paste: "${Ve.message}".`)}}keydown(ke){var De;(De=this.getActive())!=null&&De.shouldGetKeyboardEvents()||Ye._keyboardManager.exec(this,ke)}onEditingAction(ke){["undo","redo","delete","selectAll"].includes(ke.name)&&this[ke.name]()}setEditingState(ke){ke?(it(this,Se,Ru).call(this),it(this,Se,Js).call(this),it(this,Se,el).call(this),it(this,Se,_n).call(this,{isEditing:He(this,ae)!==u.AnnotationEditorType.NONE,isEmpty:it(this,Se,gi).call(this),hasSomethingToUndo:He(this,F).hasSomethingToUndo(),hasSomethingToRedo:He(this,F).hasSomethingToRedo(),hasSelectedEditor:!1})):(it(this,Se,Zs).call(this),it(this,Se,mo).call(this),it(this,Se,tl).call(this),it(this,Se,_n).call(this,{isEditing:!1}),this.disableUserSelect(!1))}registerEditorTypes(ke){if(!He(this,W)){Ct(this,W,ke);for(const De of He(this,W))it(this,Se,pi).call(this,De.defaultPropertiesToUpdate)}}getId(){return He(this,Y).getId()}get currentLayer(){return He(this,j).get(He(this,U))}getLayer(ke){return He(this,j).get(ke)}get currentPageIndex(){return He(this,U)}addLayer(ke){He(this,j).set(ke.pageIndex,ke),He(this,J)?ke.enable():ke.disable()}removeLayer(ke){He(this,j).delete(ke.pageIndex)}updateMode(ke,De=null){if(He(this,ae)!==ke){if(Ct(this,ae,ke),ke===u.AnnotationEditorType.NONE){this.setEditingState(!1),it(this,Se,Mu).call(this);return}this.setEditingState(!0),it(this,Se,Bu).call(this),this.unselectAll();for(const Re of He(this,j).values())Re.updateMode(ke);if(De){for(const Re of He(this,H).values())if(Re.annotationElementId===De){this.setSelected(Re),Re.enterInEditMode();break}}}}updateToolbar(ke){ke!==He(this,ae)&&this._eventBus.dispatch("switchannotationeditormode",{source:this,mode:ke})}updateParams(ke,De){if(He(this,W)){if(ke===u.AnnotationEditorParamsType.CREATE){this.currentLayer.addNewEditor(ke);return}for(const Re of He(this,V))Re.updateParams(ke,De);for(const Re of He(this,W))Re.updateDefaultParams(ke,De)}}enableWaiting(ke=!1){if(He(this,ee)!==ke){Ct(this,ee,ke);for(const De of He(this,j).values())ke?De.disableClick():De.enableClick(),De.div.classList.toggle("waiting",ke)}}getEditors(ke){const De=[];for(const Re of He(this,H).values())Re.pageIndex===ke&&De.push(Re);return De}getEditor(ke){return He(this,H).get(ke)}addEditor(ke){He(this,H).set(ke.id,ke)}removeEditor(ke){var De;He(this,H).delete(ke.id),this.unselect(ke),(!ke.annotationElementId||!He(this,N).has(ke.annotationElementId))&&((De=He(this,L))==null||De.remove(ke.id))}addDeletedAnnotationElement(ke){He(this,N).add(ke.annotationElementId),ke.deleted=!0}isDeletedAnnotationElement(ke){return He(this,N).has(ke)}removeDeletedAnnotationElement(ke){He(this,N).delete(ke.annotationElementId),ke.deleted=!1}setActiveEditor(ke){He(this,O)!==ke&&(Ct(this,O,ke),ke&&it(this,Se,pi).call(this,ke.propertiesToUpdate))}toggleSelected(ke){if(He(this,V).has(ke)){He(this,V).delete(ke),ke.unselect(),it(this,Se,_n).call(this,{hasSelectedEditor:this.hasSelection});return}He(this,V).add(ke),ke.select(),it(this,Se,pi).call(this,ke.propertiesToUpdate),it(this,Se,_n).call(this,{hasSelectedEditor:!0})}setSelected(ke){for(const De of He(this,V))De!==ke&&De.unselect();He(this,V).clear(),He(this,V).add(ke),ke.select(),it(this,Se,pi).call(this,ke.propertiesToUpdate),it(this,Se,_n).call(this,{hasSelectedEditor:!0})}isSelected(ke){return He(this,V).has(ke)}unselect(ke){ke.unselect(),He(this,V).delete(ke),it(this,Se,_n).call(this,{hasSelectedEditor:this.hasSelection})}get hasSelection(){return He(this,V).size!==0}undo(){He(this,F).undo(),it(this,Se,_n).call(this,{hasSomethingToUndo:He(this,F).hasSomethingToUndo(),hasSomethingToRedo:!0,isEmpty:it(this,Se,gi).call(this)})}redo(){He(this,F).redo(),it(this,Se,_n).call(this,{hasSomethingToUndo:!0,hasSomethingToRedo:He(this,F).hasSomethingToRedo(),isEmpty:it(this,Se,gi).call(this)})}addCommands(ke){He(this,F).add(ke),it(this,Se,_n).call(this,{hasSomethingToUndo:!0,hasSomethingToRedo:!1,isEmpty:it(this,Se,gi).call(this)})}delete(){if(this.commitOrRemove(),!this.hasSelection)return;const ke=[...He(this,V)],De=()=>{for(const Ge of ke)Ge.remove()},Re=()=>{for(const Ge of ke)it(this,Se,rl).call(this,Ge)};this.addCommands({cmd:De,undo:Re,mustExec:!0})}commitOrRemove(){var ke;(ke=He(this,O))==null||ke.commitOrRemove()}hasSomethingToControl(){return He(this,O)||this.hasSelection}selectAll(){for(const ke of He(this,V))ke.commit();it(this,Se,nl).call(this,He(this,H).values())}unselectAll(){if(He(this,O)){He(this,O).commitOrRemove();return}if(this.hasSelection){for(const ke of He(this,V))ke.unselect();He(this,V).clear(),it(this,Se,_n).call(this,{hasSelectedEditor:!1})}}translateSelectedEditors(ke,De,Re=!1){if(Re||this.commitOrRemove(),!this.hasSelection)return;He(this,le)[0]+=ke,He(this,le)[1]+=De;const[Ge,Ve]=He(this,le),Xe=[...He(this,V)],We=1e3;He(this,xe)&&clearTimeout(He(this,xe)),Ct(this,xe,setTimeout(()=>{Ct(this,xe,null),He(this,le)[0]=He(this,le)[1]=0,this.addCommands({cmd:()=>{for(const ze of Xe)He(this,H).has(ze.id)&&ze.translateInPage(Ge,Ve)},undo:()=>{for(const ze of Xe)He(this,H).has(ze.id)&&ze.translateInPage(-Ge,-Ve)},mustExec:!1})},We));for(const ze of Xe)ze.translateInPage(ke,De)}setUpDragSession(){if(this.hasSelection){this.disableUserSelect(!0),Ct(this,D,new Map);for(const ke of He(this,V))He(this,D).set(ke,{savedX:ke.x,savedY:ke.y,savedPageIndex:ke.pageIndex,newX:0,newY:0,newPageIndex:-1})}}endDragSession(){if(!He(this,D))return!1;this.disableUserSelect(!1);const ke=He(this,D);Ct(this,D,null);let De=!1;for(const[{x:Ge,y:Ve,pageIndex:Xe},We]of ke)We.newX=Ge,We.newY=Ve,We.newPageIndex=Xe,De||(De=Ge!==We.savedX||Ve!==We.savedY||Xe!==We.savedPageIndex);if(!De)return!1;const Re=(Ge,Ve,Xe,We)=>{if(He(this,H).has(Ge.id)){const ze=He(this,j).get(We);ze?Ge._setParentAndPosition(ze,Ve,Xe):(Ge.pageIndex=We,Ge.x=Ve,Ge.y=Xe)}};return this.addCommands({cmd:()=>{for(const[Ge,{newX:Ve,newY:Xe,newPageIndex:We}]of ke)Re(Ge,Ve,Xe,We)},undo:()=>{for(const[Ge,{savedX:Ve,savedY:Xe,savedPageIndex:We}]of ke)Re(Ge,Ve,Xe,We)},mustExec:!0}),!0}dragSelectedEditors(ke,De){if(He(this,D))for(const Re of He(this,D).keys())Re.drag(ke,De)}rebuild(ke){if(ke.parent===null){const De=this.getLayer(ke.pageIndex);De?(De.changeParent(ke),De.addOrRebuild(ke)):(this.addEditor(ke),this.addToAnnotationStorage(ke),ke.rebuild())}else ke.parent.addOrRebuild(ke)}isActive(ke){return He(this,O)===ke}getActive(){return He(this,O)}getMode(){return He(this,ae)}get imageManager(){return(0,u.shadow)(this,"imageManager",new b)}};O=new WeakMap,H=new WeakMap,j=new WeakMap,q=new WeakMap,L=new WeakMap,F=new WeakMap,U=new WeakMap,N=new WeakMap,D=new WeakMap,W=new WeakMap,Z=new WeakMap,Q=new WeakMap,Y=new WeakMap,J=new WeakMap,ee=new WeakMap,re=new WeakMap,ae=new WeakMap,V=new WeakMap,K=new WeakMap,te=new WeakMap,ie=new WeakMap,ce=new WeakMap,me=new WeakMap,we=new WeakMap,ve=new WeakMap,ge=new WeakMap,ue=new WeakMap,se=new WeakMap,oe=new WeakMap,de=new WeakMap,le=new WeakMap,xe=new WeakMap,Ce=new WeakMap,$e=new WeakMap,Se=new WeakSet,Ru=function(){window.addEventListener("focus",He(this,ie)),window.addEventListener("blur",He(this,te))},Zs=function(){window.removeEventListener("focus",He(this,ie)),window.removeEventListener("blur",He(this,te))},Js=function(){window.addEventListener("keydown",He(this,ve),{capture:!0})},mo=function(){window.removeEventListener("keydown",He(this,ve),{capture:!0})},el=function(){document.addEventListener("copy",He(this,ce)),document.addEventListener("cut",He(this,me)),document.addEventListener("paste",He(this,we))},tl=function(){document.removeEventListener("copy",He(this,ce)),document.removeEventListener("cut",He(this,me)),document.removeEventListener("paste",He(this,we))},_n=function(ke){Object.entries(ke).some(([Re,Ge])=>He(this,de)[Re]!==Ge)&&this._eventBus.dispatch("annotationeditorstateschanged",{source:this,details:Object.assign(He(this,de),ke)})},pi=function(ke){this._eventBus.dispatch("annotationeditorparamschanged",{source:this,details:ke})},Bu=function(){if(!He(this,J)){Ct(this,J,!0);for(const ke of He(this,j).values())ke.enable()}},Mu=function(){if(this.unselectAll(),He(this,J)){Ct(this,J,!1);for(const ke of He(this,j).values())ke.disable()}},rl=function(ke){const De=He(this,j).get(ke.pageIndex);De?De.addOrRebuild(ke):this.addEditor(ke)},gi=function(){if(He(this,H).size===0)return!0;if(He(this,H).size===1)for(const ke of He(this,H).values())return ke.isEmpty();return!1},nl=function(ke){He(this,V).clear();for(const De of ke)De.isEmpty()||(He(this,V).add(De),De.select());it(this,Se,_n).call(this,{hasSelectedEditor:!0})},yr(Ye,"TRANSLATE_SMALL",1),yr(Ye,"TRANSLATE_BIG",10);let f=Ye;s.AnnotationEditorUIManager=f},(a,s,c)=>{var U,N,D,W,Z,Q,Y,J,ee,re,ae,V,Fa,Na,al,Ao,vo,mi,Ai;Object.defineProperty(s,"__esModule",{value:!0}),s.StatTimer=s.RenderingCancelledException=s.PixelsPerInch=s.PageViewport=s.PDFDateString=s.DOMStandardFontDataFactory=s.DOMSVGFactory=s.DOMFilterFactory=s.DOMCanvasFactory=s.DOMCMapReaderFactory=void 0,s.deprecated=T,s.getColorValues=H,s.getCurrentTransform=j,s.getCurrentTransformInverse=q,s.getFilenameFromUrl=_,s.getPdfFilenameFromUrl=I,s.getRGB=O,s.getXfaPageViewport=k,s.isDataScheme=S,s.isPdfFile=w,s.isValidFetchUrl=P,s.loadScript=R,s.noContextMenu=E,s.setLayerDimensions=L;var u=c(7),d=c(1);const p="http://www.w3.org/2000/svg",F=class F{};yr(F,"CSS",96),yr(F,"PDF",72),yr(F,"PDF_TO_CSS_UNITS",F.CSS/F.PDF);let v=F;s.PixelsPerInch=v;class A extends u.BaseFilterFactory{constructor({docId:se,ownerDocument:oe=globalThis.document}={}){super();bt(this,V);bt(this,U);bt(this,N);bt(this,D);bt(this,W);bt(this,Z);bt(this,Q);bt(this,Y);bt(this,J);bt(this,ee);bt(this,re);bt(this,ae,0);Ct(this,D,se),Ct(this,W,oe)}addFilter(se){if(!se)return"none";let oe=He(this,V,Fa).get(se);if(oe)return oe;let de,le,xe,Ce;if(se.length===1){const Ae=se[0],pe=new Array(256);for(let he=0;he<256;he++)pe[he]=Ae[he]/255;Ce=de=le=xe=pe.join(",")}else{const[Ae,pe,he]=se,Ie=new Array(256),ye=new Array(256),Pe=new Array(256);for(let Ne=0;Ne<256;Ne++)Ie[Ne]=Ae[Ne]/255,ye[Ne]=pe[Ne]/255,Pe[Ne]=he[Ne]/255;de=Ie.join(","),le=ye.join(","),xe=Pe.join(","),Ce=`${de}${le}${xe}`}if(oe=He(this,V,Fa).get(Ce),oe)return He(this,V,Fa).set(se,oe),oe;const $e=`g_${He(this,D)}_transfer_map_${hi(this,ae)._++}`,Se=`url(#${$e})`;He(this,V,Fa).set(se,Se),He(this,V,Fa).set(Ce,Se);const Ee=it(this,V,Ao).call(this,$e);return it(this,V,mi).call(this,de,le,xe,Ee),Se}addHCMFilter(se,oe){var pe;const de=`${se}-${oe}`;if(He(this,Q)===de)return He(this,Y);if(Ct(this,Q,de),Ct(this,Y,"none"),(pe=He(this,Z))==null||pe.remove(),!se||!oe)return He(this,Y);const le=it(this,V,Ai).call(this,se);se=d.Util.makeHexColor(...le);const xe=it(this,V,Ai).call(this,oe);if(oe=d.Util.makeHexColor(...xe),He(this,V,Na).style.color="",se==="#000000"&&oe==="#ffffff"||se===oe)return He(this,Y);const Ce=new Array(256);for(let he=0;he<=255;he++){const Ie=he/255;Ce[he]=Ie<=.03928?Ie/12.92:((Ie+.055)/1.055)**2.4}const $e=Ce.join(","),Se=`g_${He(this,D)}_hcm_filter`,Ee=Ct(this,J,it(this,V,Ao).call(this,Se));it(this,V,mi).call(this,$e,$e,$e,Ee),it(this,V,al).call(this,Ee);const Ae=(he,Ie)=>{const ye=le[he]/255,Pe=xe[he]/255,Ne=new Array(Ie+1);for(let Le=0;Le<=Ie;Le++)Ne[Le]=ye+Le/Ie*(Pe-ye);return Ne.join(",")};return it(this,V,mi).call(this,Ae(0,5),Ae(1,5),Ae(2,5),Ee),Ct(this,Y,`url(#${Se})`),He(this,Y)}addHighlightHCMFilter(se,oe,de,le){var Pe;const xe=`${se}-${oe}-${de}-${le}`;if(He(this,ee)===xe)return He(this,re);if(Ct(this,ee,xe),Ct(this,re,"none"),(Pe=He(this,J))==null||Pe.remove(),!se||!oe)return He(this,re);const[Ce,$e]=[se,oe].map(it(this,V,Ai).bind(this));let Se=Math.round(.2126*Ce[0]+.7152*Ce[1]+.0722*Ce[2]),Ee=Math.round(.2126*$e[0]+.7152*$e[1]+.0722*$e[2]),[Ae,pe]=[de,le].map(it(this,V,Ai).bind(this));Ee<Se&&([Se,Ee,Ae,pe]=[Ee,Se,pe,Ae]),He(this,V,Na).style.color="";const he=(Ne,Le,Oe)=>{const Fe=new Array(256),_e=(Ee-Se)/Oe,je=Ne/255,Ye=(Le-Ne)/(255*Oe);let Te=0;for(let ke=0;ke<=Oe;ke++){const De=Math.round(Se+ke*_e),Re=je+ke*Ye;for(let Ge=Te;Ge<=De;Ge++)Fe[Ge]=Re;Te=De+1}for(let ke=Te;ke<256;ke++)Fe[ke]=Fe[Te-1];return Fe.join(",")},Ie=`g_${He(this,D)}_hcm_highlight_filter`,ye=Ct(this,J,it(this,V,Ao).call(this,Ie));return it(this,V,al).call(this,ye),it(this,V,mi).call(this,he(Ae[0],pe[0],5),he(Ae[1],pe[1],5),he(Ae[2],pe[2],5),ye),Ct(this,re,`url(#${Ie})`),He(this,re)}destroy(se=!1){se&&(He(this,Y)||He(this,re))||(He(this,N)&&(He(this,N).parentNode.parentNode.remove(),Ct(this,N,null)),He(this,U)&&(He(this,U).clear(),Ct(this,U,null)),Ct(this,ae,0))}}U=new WeakMap,N=new WeakMap,D=new WeakMap,W=new WeakMap,Z=new WeakMap,Q=new WeakMap,Y=new WeakMap,J=new WeakMap,ee=new WeakMap,re=new WeakMap,ae=new WeakMap,V=new WeakSet,Fa=function(){return He(this,U)||Ct(this,U,new Map)},Na=function(){if(!He(this,N)){const se=He(this,W).createElement("div"),{style:oe}=se;oe.visibility="hidden",oe.contain="strict",oe.width=oe.height=0,oe.position="absolute",oe.top=oe.left=0,oe.zIndex=-1;const de=He(this,W).createElementNS(p,"svg");de.setAttribute("width",0),de.setAttribute("height",0),Ct(this,N,He(this,W).createElementNS(p,"defs")),se.append(de),de.append(He(this,N)),He(this,W).body.append(se)}return He(this,N)},al=function(se){const oe=He(this,W).createElementNS(p,"feColorMatrix");oe.setAttribute("type","matrix"),oe.setAttribute("values","0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0.2126 0.7152 0.0722 0 0 0 0 0 1 0"),se.append(oe)},Ao=function(se){const oe=He(this,W).createElementNS(p,"filter");return oe.setAttribute("color-interpolation-filters","sRGB"),oe.setAttribute("id",se),He(this,V,Na).append(oe),oe},vo=function(se,oe,de){const le=He(this,W).createElementNS(p,oe);le.setAttribute("type","discrete"),le.setAttribute("tableValues",de),se.append(le)},mi=function(se,oe,de,le){const xe=He(this,W).createElementNS(p,"feComponentTransfer");le.append(xe),it(this,V,vo).call(this,xe,"feFuncR",se),it(this,V,vo).call(this,xe,"feFuncG",oe),it(this,V,vo).call(this,xe,"feFuncB",de)},Ai=function(se){return He(this,V,Na).style.color=se,O(getComputedStyle(He(this,V,Na)).getPropertyValue("color"))},s.DOMFilterFactory=A;class b extends u.BaseCanvasFactory{constructor({ownerDocument:ue=globalThis.document}={}){super(),this._document=ue}_createCanvas(ue,se){const oe=this._document.createElement("canvas");return oe.width=ue,oe.height=se,oe}}s.DOMCanvasFactory=b;async function g(ge,ue=!1){if(P(ge,document.baseURI)){const se=await fetch(ge);if(!se.ok)throw new Error(se.statusText);return ue?new Uint8Array(await se.arrayBuffer()):(0,d.stringToBytes)(await se.text())}return new Promise((se,oe)=>{const de=new XMLHttpRequest;de.open("GET",ge,!0),ue&&(de.responseType="arraybuffer"),de.onreadystatechange=()=>{if(de.readyState===XMLHttpRequest.DONE){if(de.status===200||de.status===0){let le;if(ue&&de.response?le=new Uint8Array(de.response):!ue&&de.responseText&&(le=(0,d.stringToBytes)(de.responseText)),le){se(le);return}}oe(new Error(de.statusText))}},de.send(null)})}class x extends u.BaseCMapReaderFactory{_fetchData(ue,se){return g(ue,this.isCompressed).then(oe=>({cMapData:oe,compressionType:se}))}}s.DOMCMapReaderFactory=x;class y extends u.BaseStandardFontDataFactory{_fetchData(ue){return g(ue,!0)}}s.DOMStandardFontDataFactory=y;class f extends u.BaseSVGFactory{_createSVG(ue){return document.createElementNS(p,ue)}}s.DOMSVGFactory=f;class m{constructor({viewBox:ue,scale:se,rotation:oe,offsetX:de=0,offsetY:le=0,dontFlip:xe=!1}){this.viewBox=ue,this.scale=se,this.rotation=oe,this.offsetX=de,this.offsetY=le;const Ce=(ue[2]+ue[0])/2,$e=(ue[3]+ue[1])/2;let Se,Ee,Ae,pe;switch(oe%=360,oe<0&&(oe+=360),oe){case 180:Se=-1,Ee=0,Ae=0,pe=1;break;case 90:Se=0,Ee=1,Ae=1,pe=0;break;case 270:Se=0,Ee=-1,Ae=-1,pe=0;break;case 0:Se=1,Ee=0,Ae=0,pe=-1;break;default:throw new Error("PageViewport: Invalid rotation, must be a multiple of 90 degrees.")}xe&&(Ae=-Ae,pe=-pe);let he,Ie,ye,Pe;Se===0?(he=Math.abs($e-ue[1])*se+de,Ie=Math.abs(Ce-ue[0])*se+le,ye=(ue[3]-ue[1])*se,Pe=(ue[2]-ue[0])*se):(he=Math.abs(Ce-ue[0])*se+de,Ie=Math.abs($e-ue[1])*se+le,ye=(ue[2]-ue[0])*se,Pe=(ue[3]-ue[1])*se),this.transform=[Se*se,Ee*se,Ae*se,pe*se,he-Se*se*Ce-Ae*se*$e,Ie-Ee*se*Ce-pe*se*$e],this.width=ye,this.height=Pe}get rawDims(){const{viewBox:ue}=this;return(0,d.shadow)(this,"rawDims",{pageWidth:ue[2]-ue[0],pageHeight:ue[3]-ue[1],pageX:ue[0],pageY:ue[1]})}clone({scale:ue=this.scale,rotation:se=this.rotation,offsetX:oe=this.offsetX,offsetY:de=this.offsetY,dontFlip:le=!1}={}){return new m({viewBox:this.viewBox.slice(),scale:ue,rotation:se,offsetX:oe,offsetY:de,dontFlip:le})}convertToViewportPoint(ue,se){return d.Util.applyTransform([ue,se],this.transform)}convertToViewportRectangle(ue){const se=d.Util.applyTransform([ue[0],ue[1]],this.transform),oe=d.Util.applyTransform([ue[2],ue[3]],this.transform);return[se[0],se[1],oe[0],oe[1]]}convertToPdfPoint(ue,se){return d.Util.applyInverseTransform([ue,se],this.transform)}}s.PageViewport=m;class C extends d.BaseException{constructor(ue,se=0){super(ue,"RenderingCancelledException"),this.extraDelay=se}}s.RenderingCancelledException=C;function S(ge){const ue=ge.length;let se=0;for(;se<ue&&ge[se].trim()==="";)se++;return ge.substring(se,se+5).toLowerCase()==="data:"}function w(ge){return typeof ge=="string"&&/\.pdf$/i.test(ge)}function _(ge,ue=!1){return ue||([ge]=ge.split(/[#?]/,1)),ge.substring(ge.lastIndexOf("/")+1)}function I(ge,ue="document.pdf"){if(typeof ge!="string")return ue;if(S(ge))return(0,d.warn)('getPdfFilenameFromUrl: ignore "data:"-URL for performance reasons.'),ue;const se=/^(?:(?:[^:]+:)?\/\/[^/]+)?([^?#]*)(\?[^#]*)?(#.*)?$/,oe=/[^/?#=]+\.pdf\b(?!.*\.pdf\b)/i,de=se.exec(ge);let le=oe.exec(de[1])||oe.exec(de[2])||oe.exec(de[3]);if(le&&(le=le[0],le.includes("%")))try{le=oe.exec(decodeURIComponent(le))[0]}catch{}return le||ue}class ${constructor(){yr(this,"started",Object.create(null));yr(this,"times",[])}time(ue){ue in this.started&&(0,d.warn)(`Timer is already running for ${ue}`),this.started[ue]=Date.now()}timeEnd(ue){ue in this.started||(0,d.warn)(`Timer has not been started for ${ue}`),this.times.push({name:ue,start:this.started[ue],end:Date.now()}),delete this.started[ue]}toString(){const ue=[];let se=0;for(const{name:oe}of this.times)se=Math.max(oe.length,se);for(const{name:oe,start:de,end:le}of this.times)ue.push(`${oe.padEnd(se)} ${le-de}ms
|
59
59
|
`);return ue.join("")}}s.StatTimer=$;function P(ge,ue){try{const{protocol:se}=ue?new URL(ge,ue):new URL(ge);return se==="http:"||se==="https:"}catch{return!1}}function E(ge){ge.preventDefault()}function R(ge,ue=!1){return new Promise((se,oe)=>{const de=document.createElement("script");de.src=ge,de.onload=function(le){ue&&de.remove(),se(le)},de.onerror=function(){oe(new Error(`Cannot load script at: ${de.src}`))},(document.head||document.documentElement).append(de)})}function T(ge){console.log("Deprecated API usage: "+ge)}let B;class M{static toDateObject(ue){if(!ue||typeof ue!="string")return null;B||(B=new RegExp("^D:(\\d{4})(\\d{2})?(\\d{2})?(\\d{2})?(\\d{2})?(\\d{2})?([Z|+|-])?(\\d{2})?'?(\\d{2})?'?"));const se=B.exec(ue);if(!se)return null;const oe=parseInt(se[1],10);let de=parseInt(se[2],10);de=de>=1&&de<=12?de-1:0;let le=parseInt(se[3],10);le=le>=1&&le<=31?le:1;let xe=parseInt(se[4],10);xe=xe>=0&&xe<=23?xe:0;let Ce=parseInt(se[5],10);Ce=Ce>=0&&Ce<=59?Ce:0;let $e=parseInt(se[6],10);$e=$e>=0&&$e<=59?$e:0;const Se=se[7]||"Z";let Ee=parseInt(se[8],10);Ee=Ee>=0&&Ee<=23?Ee:0;let Ae=parseInt(se[9],10)||0;return Ae=Ae>=0&&Ae<=59?Ae:0,Se==="-"?(xe+=Ee,Ce+=Ae):Se==="+"&&(xe-=Ee,Ce-=Ae),new Date(Date.UTC(oe,de,le,xe,Ce,$e))}}s.PDFDateString=M;function k(ge,{scale:ue=1,rotation:se=0}){const{width:oe,height:de}=ge.attributes.style,le=[0,0,parseInt(oe),parseInt(de)];return new m({viewBox:le,scale:ue,rotation:se})}function O(ge){if(ge.startsWith("#")){const ue=parseInt(ge.slice(1),16);return[(ue&16711680)>>16,(ue&65280)>>8,ue&255]}return ge.startsWith("rgb(")?ge.slice(4,-1).split(",").map(ue=>parseInt(ue)):ge.startsWith("rgba(")?ge.slice(5,-1).split(",").map(ue=>parseInt(ue)).slice(0,3):((0,d.warn)(`Not a valid color format: "${ge}"`),[0,0,0])}function H(ge){const ue=document.createElement("span");ue.style.visibility="hidden",document.body.append(ue);for(const se of ge.keys()){ue.style.color=se;const oe=window.getComputedStyle(ue).color;ge.set(se,O(oe))}ue.remove()}function j(ge){const{a:ue,b:se,c:oe,d:de,e:le,f:xe}=ge.getTransform();return[ue,se,oe,de,le,xe]}function q(ge){const{a:ue,b:se,c:oe,d:de,e:le,f:xe}=ge.getTransform().invertSelf();return[ue,se,oe,de,le,xe]}function L(ge,ue,se=!1,oe=!0){if(ue instanceof m){const{pageWidth:de,pageHeight:le}=ue.rawDims,{style:xe}=ge,Ce=d.FeatureTest.isCSSRoundSupported,$e=`var(--scale-factor) * ${de}px`,Se=`var(--scale-factor) * ${le}px`,Ee=Ce?`round(${$e}, 1px)`:`calc(${$e})`,Ae=Ce?`round(${Se}, 1px)`:`calc(${Se})`;!se||ue.rotation%180===0?(xe.width=Ee,xe.height=Ae):(xe.width=Ae,xe.height=Ee)}oe&&ge.setAttribute("data-main-rotation",ue.rotation)}},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.BaseStandardFontDataFactory=s.BaseSVGFactory=s.BaseFilterFactory=s.BaseCanvasFactory=s.BaseCMapReaderFactory=void 0;var u=c(1);class d{constructor(){this.constructor===d&&(0,u.unreachable)("Cannot initialize BaseFilterFactory.")}addFilter(x){return"none"}addHCMFilter(x,y){return"none"}addHighlightHCMFilter(x,y,f,m){return"none"}destroy(x=!1){}}s.BaseFilterFactory=d;class p{constructor(){this.constructor===p&&(0,u.unreachable)("Cannot initialize BaseCanvasFactory.")}create(x,y){if(x<=0||y<=0)throw new Error("Invalid canvas size");const f=this._createCanvas(x,y);return{canvas:f,context:f.getContext("2d")}}reset(x,y,f){if(!x.canvas)throw new Error("Canvas is not specified");if(y<=0||f<=0)throw new Error("Invalid canvas size");x.canvas.width=y,x.canvas.height=f}destroy(x){if(!x.canvas)throw new Error("Canvas is not specified");x.canvas.width=0,x.canvas.height=0,x.canvas=null,x.context=null}_createCanvas(x,y){(0,u.unreachable)("Abstract method `_createCanvas` called.")}}s.BaseCanvasFactory=p;class v{constructor({baseUrl:x=null,isCompressed:y=!0}){this.constructor===v&&(0,u.unreachable)("Cannot initialize BaseCMapReaderFactory."),this.baseUrl=x,this.isCompressed=y}async fetch({name:x}){if(!this.baseUrl)throw new Error('The CMap "baseUrl" parameter must be specified, ensure that the "cMapUrl" and "cMapPacked" API parameters are provided.');if(!x)throw new Error("CMap name must be specified.");const y=this.baseUrl+x+(this.isCompressed?".bcmap":""),f=this.isCompressed?u.CMapCompressionType.BINARY:u.CMapCompressionType.NONE;return this._fetchData(y,f).catch(m=>{throw new Error(`Unable to load ${this.isCompressed?"binary ":""}CMap at: ${y}`)})}_fetchData(x,y){(0,u.unreachable)("Abstract method `_fetchData` called.")}}s.BaseCMapReaderFactory=v;class A{constructor({baseUrl:x=null}){this.constructor===A&&(0,u.unreachable)("Cannot initialize BaseStandardFontDataFactory."),this.baseUrl=x}async fetch({filename:x}){if(!this.baseUrl)throw new Error('The standard font "baseUrl" parameter must be specified, ensure that the "standardFontDataUrl" API parameter is provided.');if(!x)throw new Error("Font filename must be specified.");const y=`${this.baseUrl}${x}`;return this._fetchData(y).catch(f=>{throw new Error(`Unable to load font data at: ${y}`)})}_fetchData(x){(0,u.unreachable)("Abstract method `_fetchData` called.")}}s.BaseStandardFontDataFactory=A;class b{constructor(){this.constructor===b&&(0,u.unreachable)("Cannot initialize BaseSVGFactory.")}create(x,y,f=!1){if(x<=0||y<=0)throw new Error("Invalid SVG dimensions");const m=this._createSVG("svg:svg");return m.setAttribute("version","1.1"),f||(m.setAttribute("width",`${x}px`),m.setAttribute("height",`${y}px`)),m.setAttribute("preserveAspectRatio","none"),m.setAttribute("viewBox",`0 0 ${x} ${y}`),m}createElement(x){if(typeof x!="string")throw new Error("Invalid SVG element type");return this._createSVG(x)}_createSVG(x){(0,u.unreachable)("Abstract method `_createSVG` called.")}}s.BaseSVGFactory=b},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.MurmurHash3_64=void 0;var u=c(1);const d=3285377520,p=4294901760,v=65535;class A{constructor(g){this.h1=g?g&4294967295:d,this.h2=g?g&4294967295:d}update(g){let x,y;if(typeof g=="string"){x=new Uint8Array(g.length*2),y=0;for(let T=0,B=g.length;T<B;T++){const M=g.charCodeAt(T);M<=255?x[y++]=M:(x[y++]=M>>>8,x[y++]=M&255)}}else if((0,u.isArrayBuffer)(g))x=g.slice(),y=x.byteLength;else throw new Error("Wrong data format in MurmurHash3_64_update. Input must be a string or array.");const f=y>>2,m=y-f*4,C=new Uint32Array(x.buffer,0,f);let S=0,w=0,_=this.h1,I=this.h2;const $=3432918353,P=461845907,E=$&v,R=P&v;for(let T=0;T<f;T++)T&1?(S=C[T],S=S*$&p|S*E&v,S=S<<15|S>>>17,S=S*P&p|S*R&v,_^=S,_=_<<13|_>>>19,_=_*5+3864292196):(w=C[T],w=w*$&p|w*E&v,w=w<<15|w>>>17,w=w*P&p|w*R&v,I^=w,I=I<<13|I>>>19,I=I*5+3864292196);switch(S=0,m){case 3:S^=x[f*4+2]<<16;case 2:S^=x[f*4+1]<<8;case 1:S^=x[f*4],S=S*$&p|S*E&v,S=S<<15|S>>>17,S=S*P&p|S*R&v,f&1?_^=S:I^=S}this.h1=_,this.h2=I}hexdigest(){let g=this.h1,x=this.h2;return g^=x>>>1,g=g*3981806797&p|g*36045&v,x=x*4283543511&p|((x<<16|g>>>16)*2950163797&p)>>>16,g^=x>>>1,g=g*444984403&p|g*60499&v,x=x*3301882366&p|((x<<16|g>>>16)*3120437893&p)>>>16,g^=x>>>1,(g>>>0).toString(16).padStart(8,"0")+(x>>>0).toString(16).padStart(8,"0")}}s.MurmurHash3_64=A},(a,s,c)=>{var v;Object.defineProperty(s,"__esModule",{value:!0}),s.FontLoader=s.FontFaceObject=void 0;var u=c(1);class d{constructor({ownerDocument:b=globalThis.document,styleElement:g=null}){bt(this,v,new Set);this._document=b,this.nativeFontFaces=new Set,this.styleElement=null,this.loadingRequests=[],this.loadTestFontId=0}addNativeFontFace(b){this.nativeFontFaces.add(b),this._document.fonts.add(b)}removeNativeFontFace(b){this.nativeFontFaces.delete(b),this._document.fonts.delete(b)}insertRule(b){this.styleElement||(this.styleElement=this._document.createElement("style"),this._document.documentElement.getElementsByTagName("head")[0].append(this.styleElement));const g=this.styleElement.sheet;g.insertRule(b,g.cssRules.length)}clear(){for(const b of this.nativeFontFaces)this._document.fonts.delete(b);this.nativeFontFaces.clear(),He(this,v).clear(),this.styleElement&&(this.styleElement.remove(),this.styleElement=null)}async loadSystemFont(b){if(!(!b||He(this,v).has(b.loadedName))){if((0,u.assert)(!this.disableFontFace,"loadSystemFont shouldn't be called when `disableFontFace` is set."),this.isFontLoadingAPISupported){const{loadedName:g,src:x,style:y}=b,f=new FontFace(g,x,y);this.addNativeFontFace(f);try{await f.load(),He(this,v).add(g)}catch{(0,u.warn)(`Cannot load system font: ${b.baseFontName}, installing it could help to improve PDF rendering.`),this.removeNativeFontFace(f)}return}(0,u.unreachable)("Not implemented: loadSystemFont without the Font Loading API.")}}async bind(b){if(b.attached||b.missingFile&&!b.systemFontInfo)return;if(b.attached=!0,b.systemFontInfo){await this.loadSystemFont(b.systemFontInfo);return}if(this.isFontLoadingAPISupported){const x=b.createNativeFontFace();if(x){this.addNativeFontFace(x);try{await x.loaded}catch(y){throw(0,u.warn)(`Failed to load font '${x.family}': '${y}'.`),b.disableFontFace=!0,y}}return}const g=b.createFontFaceRule();if(g){if(this.insertRule(g),this.isSyncFontLoadingSupported)return;await new Promise(x=>{const y=this._queueLoadingCallback(x);this._prepareFontLoadEvent(b,y)})}}get isFontLoadingAPISupported(){var g;const b=!!((g=this._document)!=null&&g.fonts);return(0,u.shadow)(this,"isFontLoadingAPISupported",b)}get isSyncFontLoadingSupported(){let b=!1;return(u.isNodeJS||typeof navigator<"u"&&/Mozilla\/5.0.*?rv:\d+.*? Gecko/.test(navigator.userAgent))&&(b=!0),(0,u.shadow)(this,"isSyncFontLoadingSupported",b)}_queueLoadingCallback(b){function g(){for((0,u.assert)(!y.done,"completeRequest() cannot be called twice."),y.done=!0;x.length>0&&x[0].done;){const f=x.shift();setTimeout(f.callback,0)}}const{loadingRequests:x}=this,y={done:!1,complete:g,callback:b};return x.push(y),y}get _loadTestFont(){const b=atob("T1RUTwALAIAAAwAwQ0ZGIDHtZg4AAAOYAAAAgUZGVE1lkzZwAAAEHAAAABxHREVGABQAFQAABDgAAAAeT1MvMlYNYwkAAAEgAAAAYGNtYXABDQLUAAACNAAAAUJoZWFk/xVFDQAAALwAAAA2aGhlYQdkA+oAAAD0AAAAJGhtdHgD6AAAAAAEWAAAAAZtYXhwAAJQAAAAARgAAAAGbmFtZVjmdH4AAAGAAAAAsXBvc3T/hgAzAAADeAAAACAAAQAAAAEAALZRFsRfDzz1AAsD6AAAAADOBOTLAAAAAM4KHDwAAAAAA+gDIQAAAAgAAgAAAAAAAAABAAADIQAAAFoD6AAAAAAD6AABAAAAAAAAAAAAAAAAAAAAAQAAUAAAAgAAAAQD6AH0AAUAAAKKArwAAACMAooCvAAAAeAAMQECAAACAAYJAAAAAAAAAAAAAQAAAAAAAAAAAAAAAFBmRWQAwAAuAC4DIP84AFoDIQAAAAAAAQAAAAAAAAAAACAAIAABAAAADgCuAAEAAAAAAAAAAQAAAAEAAAAAAAEAAQAAAAEAAAAAAAIAAQAAAAEAAAAAAAMAAQAAAAEAAAAAAAQAAQAAAAEAAAAAAAUAAQAAAAEAAAAAAAYAAQAAAAMAAQQJAAAAAgABAAMAAQQJAAEAAgABAAMAAQQJAAIAAgABAAMAAQQJAAMAAgABAAMAAQQJAAQAAgABAAMAAQQJAAUAAgABAAMAAQQJAAYAAgABWABYAAAAAAAAAwAAAAMAAAAcAAEAAAAAADwAAwABAAAAHAAEACAAAAAEAAQAAQAAAC7//wAAAC7////TAAEAAAAAAAABBgAAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAMAAAAAAAD/gwAyAAAAAQAAAAAAAAAAAAAAAAAAAAABAAQEAAEBAQJYAAEBASH4DwD4GwHEAvgcA/gXBIwMAYuL+nz5tQXkD5j3CBLnEQACAQEBIVhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYWFhYAAABAQAADwACAQEEE/t3Dov6fAH6fAT+fPp8+nwHDosMCvm1Cvm1DAz6fBQAAAAAAAABAAAAAMmJbzEAAAAAzgTjFQAAAADOBOQpAAEAAAAAAAAADAAUAAQAAAABAAAAAgABAAAAAAAAAAAD6AAAAAAAAA==");return(0,u.shadow)(this,"_loadTestFont",b)}_prepareFontLoadEvent(b,g){function x(O,H){return O.charCodeAt(H)<<24|O.charCodeAt(H+1)<<16|O.charCodeAt(H+2)<<8|O.charCodeAt(H+3)&255}function y(O,H,j,q){const L=O.substring(0,H),F=O.substring(H+j);return L+q+F}let f,m;const C=this._document.createElement("canvas");C.width=1,C.height=1;const S=C.getContext("2d");let w=0;function _(O,H){if(++w>30){(0,u.warn)("Load test font never loaded."),H();return}if(S.font="30px "+O,S.fillText(".",0,20),S.getImageData(0,0,1,1).data[3]>0){H();return}setTimeout(_.bind(null,O,H))}const I=`lt${Date.now()}${this.loadTestFontId++}`;let $=this._loadTestFont;$=y($,976,I.length,I);const E=16,R=1482184792;let T=x($,E);for(f=0,m=I.length-3;f<m;f+=4)T=T-R+x(I,f)|0;f<I.length&&(T=T-R+x(I+"XXX",f)|0),$=y($,E,4,(0,u.string32)(T));const B=`url(data:font/opentype;base64,${btoa($)});`,M=`@font-face {font-family:"${I}";src:${B}}`;this.insertRule(M);const k=this._document.createElement("div");k.style.visibility="hidden",k.style.width=k.style.height="10px",k.style.position="absolute",k.style.top=k.style.left="0px";for(const O of[b.loadedName,I]){const H=this._document.createElement("span");H.textContent="Hi",H.style.fontFamily=O,k.append(H)}this._document.body.append(k),_(I,()=>{k.remove(),g.complete()})}}v=new WeakMap,s.FontLoader=d;class p{constructor(b,{isEvalSupported:g=!0,disableFontFace:x=!1,ignoreErrors:y=!1,inspectFont:f=null}){this.compiledGlyphs=Object.create(null);for(const m in b)this[m]=b[m];this.isEvalSupported=g!==!1,this.disableFontFace=x===!0,this.ignoreErrors=y===!0,this._inspectFont=f}createNativeFontFace(){var g;if(!this.data||this.disableFontFace)return null;let b;if(!this.cssFontInfo)b=new FontFace(this.loadedName,this.data,{});else{const x={weight:this.cssFontInfo.fontWeight};this.cssFontInfo.italicAngle&&(x.style=`oblique ${this.cssFontInfo.italicAngle}deg`),b=new FontFace(this.cssFontInfo.fontFamily,this.data,x)}return(g=this._inspectFont)==null||g.call(this,this),b}createFontFaceRule(){var y;if(!this.data||this.disableFontFace)return null;const b=(0,u.bytesToString)(this.data),g=`url(data:${this.mimetype};base64,${btoa(b)});`;let x;if(!this.cssFontInfo)x=`@font-face {font-family:"${this.loadedName}";src:${g}}`;else{let f=`font-weight: ${this.cssFontInfo.fontWeight};`;this.cssFontInfo.italicAngle&&(f+=`font-style: oblique ${this.cssFontInfo.italicAngle}deg;`),x=`@font-face {font-family:"${this.cssFontInfo.fontFamily}";${f}src:${g}}`}return(y=this._inspectFont)==null||y.call(this,this,g),x}getPathGenerator(b,g){if(this.compiledGlyphs[g]!==void 0)return this.compiledGlyphs[g];let x;try{x=b.get(this.loadedName+"_path_"+g)}catch(y){if(!this.ignoreErrors)throw y;return(0,u.warn)(`getPathGenerator - ignoring character: "${y}".`),this.compiledGlyphs[g]=function(f,m){}}if(this.isEvalSupported&&u.FeatureTest.isEvalSupported){const y=[];for(const f of x){const m=f.args!==void 0?f.args.join(","):"";y.push("c.",f.cmd,"(",m,`);
|
60
60
|
`)}return this.compiledGlyphs[g]=new Function("c","size",y.join(""))}return this.compiledGlyphs[g]=function(y,f){for(const m of x)m.cmd==="scale"&&(m.args=[f,-f]),y[m.cmd].apply(y,m.args)}}}s.FontFaceObject=p},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.NodeStandardFontDataFactory=s.NodeFilterFactory=s.NodeCanvasFactory=s.NodeCMapReaderFactory=void 0;var u=c(7);c(1);const d=function(g){return new Promise((x,y)=>{require$$5.readFile(g,(m,C)=>{if(m||!C){y(new Error(m));return}x(new Uint8Array(C))})})};class p extends u.BaseFilterFactory{}s.NodeFilterFactory=p;class v extends u.BaseCanvasFactory{_createCanvas(x,y){return require$$5.createCanvas(x,y)}}s.NodeCanvasFactory=v;class A extends u.BaseCMapReaderFactory{_fetchData(x,y){return d(x).then(f=>({cMapData:f,compressionType:y}))}}s.NodeCMapReaderFactory=A;class b extends u.BaseStandardFontDataFactory{_fetchData(x){return d(x)}}s.NodeStandardFontDataFactory=b},(a,s,c)=>{var N,il,ol;Object.defineProperty(s,"__esModule",{value:!0}),s.CanvasGraphics=void 0;var u=c(1),d=c(6),p=c(12),v=c(13);const A=16,b=100,g=4096,x=15,y=10,f=1e3,m=16;function C(Q,Y){if(Q._removeMirroring)throw new Error("Context is already forwarding operations.");Q.__originalSave=Q.save,Q.__originalRestore=Q.restore,Q.__originalRotate=Q.rotate,Q.__originalScale=Q.scale,Q.__originalTranslate=Q.translate,Q.__originalTransform=Q.transform,Q.__originalSetTransform=Q.setTransform,Q.__originalResetTransform=Q.resetTransform,Q.__originalClip=Q.clip,Q.__originalMoveTo=Q.moveTo,Q.__originalLineTo=Q.lineTo,Q.__originalBezierCurveTo=Q.bezierCurveTo,Q.__originalRect=Q.rect,Q.__originalClosePath=Q.closePath,Q.__originalBeginPath=Q.beginPath,Q._removeMirroring=()=>{Q.save=Q.__originalSave,Q.restore=Q.__originalRestore,Q.rotate=Q.__originalRotate,Q.scale=Q.__originalScale,Q.translate=Q.__originalTranslate,Q.transform=Q.__originalTransform,Q.setTransform=Q.__originalSetTransform,Q.resetTransform=Q.__originalResetTransform,Q.clip=Q.__originalClip,Q.moveTo=Q.__originalMoveTo,Q.lineTo=Q.__originalLineTo,Q.bezierCurveTo=Q.__originalBezierCurveTo,Q.rect=Q.__originalRect,Q.closePath=Q.__originalClosePath,Q.beginPath=Q.__originalBeginPath,delete Q._removeMirroring},Q.save=function(){Y.save(),this.__originalSave()},Q.restore=function(){Y.restore(),this.__originalRestore()},Q.translate=function(ee,re){Y.translate(ee,re),this.__originalTranslate(ee,re)},Q.scale=function(ee,re){Y.scale(ee,re),this.__originalScale(ee,re)},Q.transform=function(ee,re,ae,V,K,te){Y.transform(ee,re,ae,V,K,te),this.__originalTransform(ee,re,ae,V,K,te)},Q.setTransform=function(ee,re,ae,V,K,te){Y.setTransform(ee,re,ae,V,K,te),this.__originalSetTransform(ee,re,ae,V,K,te)},Q.resetTransform=function(){Y.resetTransform(),this.__originalResetTransform()},Q.rotate=function(ee){Y.rotate(ee),this.__originalRotate(ee)},Q.clip=function(ee){Y.clip(ee),this.__originalClip(ee)},Q.moveTo=function(J,ee){Y.moveTo(J,ee),this.__originalMoveTo(J,ee)},Q.lineTo=function(J,ee){Y.lineTo(J,ee),this.__originalLineTo(J,ee)},Q.bezierCurveTo=function(J,ee,re,ae,V,K){Y.bezierCurveTo(J,ee,re,ae,V,K),this.__originalBezierCurveTo(J,ee,re,ae,V,K)},Q.rect=function(J,ee,re,ae){Y.rect(J,ee,re,ae),this.__originalRect(J,ee,re,ae)},Q.closePath=function(){Y.closePath(),this.__originalClosePath()},Q.beginPath=function(){Y.beginPath(),this.__originalBeginPath()}}class S{constructor(Y){this.canvasFactory=Y,this.cache=Object.create(null)}getCanvas(Y,J,ee){let re;return this.cache[Y]!==void 0?(re=this.cache[Y],this.canvasFactory.reset(re,J,ee)):(re=this.canvasFactory.create(J,ee),this.cache[Y]=re),re}delete(Y){delete this.cache[Y]}clear(){for(const Y in this.cache){const J=this.cache[Y];this.canvasFactory.destroy(J),delete this.cache[Y]}}}function w(Q,Y,J,ee,re,ae,V,K,te,ie){const[ce,me,we,ve,ge,ue]=(0,d.getCurrentTransform)(Q);if(me===0&&we===0){const de=V*ce+ge,le=Math.round(de),xe=K*ve+ue,Ce=Math.round(xe),$e=(V+te)*ce+ge,Se=Math.abs(Math.round($e)-le)||1,Ee=(K+ie)*ve+ue,Ae=Math.abs(Math.round(Ee)-Ce)||1;return Q.setTransform(Math.sign(ce),0,0,Math.sign(ve),le,Ce),Q.drawImage(Y,J,ee,re,ae,0,0,Se,Ae),Q.setTransform(ce,me,we,ve,ge,ue),[Se,Ae]}if(ce===0&&ve===0){const de=K*we+ge,le=Math.round(de),xe=V*me+ue,Ce=Math.round(xe),$e=(K+ie)*we+ge,Se=Math.abs(Math.round($e)-le)||1,Ee=(V+te)*me+ue,Ae=Math.abs(Math.round(Ee)-Ce)||1;return Q.setTransform(0,Math.sign(me),Math.sign(we),0,le,Ce),Q.drawImage(Y,J,ee,re,ae,0,0,Ae,Se),Q.setTransform(ce,me,we,ve,ge,ue),[Ae,Se]}Q.drawImage(Y,J,ee,re,ae,V,K,te,ie);const se=Math.hypot(ce,me),oe=Math.hypot(we,ve);return[se*te,oe*ie]}function _(Q){const{width:Y,height:J}=Q;if(Y>f||J>f)return null;const ee=1e3,re=new Uint8Array([0,2,4,0,1,0,5,4,8,10,0,8,0,2,1,0]),ae=Y+1;let V=new Uint8Array(ae*(J+1)),K,te,ie;const ce=Y+7&-8;let me=new Uint8Array(ce*J),we=0;for(const oe of Q.data){let de=128;for(;de>0;)me[we++]=oe&de?0:255,de>>=1}let ve=0;for(we=0,me[we]!==0&&(V[0]=1,++ve),te=1;te<Y;te++)me[we]!==me[we+1]&&(V[te]=me[we]?2:1,++ve),we++;for(me[we]!==0&&(V[te]=2,++ve),K=1;K<J;K++){we=K*ce,ie=K*ae,me[we-ce]!==me[we]&&(V[ie]=me[we]?1:8,++ve);let oe=(me[we]?4:0)+(me[we-ce]?8:0);for(te=1;te<Y;te++)oe=(oe>>2)+(me[we+1]?4:0)+(me[we-ce+1]?8:0),re[oe]&&(V[ie+te]=re[oe],++ve),we++;if(me[we-ce]!==me[we]&&(V[ie+te]=me[we]?2:4,++ve),ve>ee)return null}for(we=ce*(J-1),ie=K*ae,me[we]!==0&&(V[ie]=8,++ve),te=1;te<Y;te++)me[we]!==me[we+1]&&(V[ie+te]=me[we]?4:8,++ve),we++;if(me[we]!==0&&(V[ie+te]=4,++ve),ve>ee)return null;const ge=new Int32Array([0,ae,-1,0,-ae,0,0,0,1]),ue=new Path2D;for(K=0;ve&&K<=J;K++){let oe=K*ae;const de=oe+Y;for(;oe<de&&!V[oe];)oe++;if(oe===de)continue;ue.moveTo(oe%ae,K);const le=oe;let xe=V[oe];do{const Ce=ge[xe];do oe+=Ce;while(!V[oe]);const $e=V[oe];$e!==5&&$e!==10?(xe=$e,V[oe]=0):(xe=$e&51*xe>>4,V[oe]&=xe>>2|xe<<2),ue.lineTo(oe%ae,oe/ae|0),V[oe]||--ve}while(le!==oe);--K}return me=null,V=null,function(oe){oe.save(),oe.scale(1/Y,-1/J),oe.translate(0,-J),oe.fill(ue),oe.beginPath(),oe.restore()}}class I{constructor(Y,J){this.alphaIsShape=!1,this.fontSize=0,this.fontSizeScale=1,this.textMatrix=u.IDENTITY_MATRIX,this.textMatrixScale=1,this.fontMatrix=u.FONT_IDENTITY_MATRIX,this.leading=0,this.x=0,this.y=0,this.lineX=0,this.lineY=0,this.charSpacing=0,this.wordSpacing=0,this.textHScale=1,this.textRenderingMode=u.TextRenderingMode.FILL,this.textRise=0,this.fillColor="#000000",this.strokeColor="#000000",this.patternFill=!1,this.fillAlpha=1,this.strokeAlpha=1,this.lineWidth=1,this.activeSMask=null,this.transferMaps="none",this.startNewPathAndClipBox([0,0,Y,J])}clone(){const Y=Object.create(this);return Y.clipBox=this.clipBox.slice(),Y}setCurrentPoint(Y,J){this.x=Y,this.y=J}updatePathMinMax(Y,J,ee){[J,ee]=u.Util.applyTransform([J,ee],Y),this.minX=Math.min(this.minX,J),this.minY=Math.min(this.minY,ee),this.maxX=Math.max(this.maxX,J),this.maxY=Math.max(this.maxY,ee)}updateRectMinMax(Y,J){const ee=u.Util.applyTransform(J,Y),re=u.Util.applyTransform(J.slice(2),Y);this.minX=Math.min(this.minX,ee[0],re[0]),this.minY=Math.min(this.minY,ee[1],re[1]),this.maxX=Math.max(this.maxX,ee[0],re[0]),this.maxY=Math.max(this.maxY,ee[1],re[1])}updateScalingPathMinMax(Y,J){u.Util.scaleMinMax(Y,J),this.minX=Math.min(this.minX,J[0]),this.maxX=Math.max(this.maxX,J[1]),this.minY=Math.min(this.minY,J[2]),this.maxY=Math.max(this.maxY,J[3])}updateCurvePathMinMax(Y,J,ee,re,ae,V,K,te,ie,ce){const me=u.Util.bezierBoundingBox(J,ee,re,ae,V,K,te,ie);if(ce){ce[0]=Math.min(ce[0],me[0],me[2]),ce[1]=Math.max(ce[1],me[0],me[2]),ce[2]=Math.min(ce[2],me[1],me[3]),ce[3]=Math.max(ce[3],me[1],me[3]);return}this.updateRectMinMax(Y,me)}getPathBoundingBox(Y=p.PathType.FILL,J=null){const ee=[this.minX,this.minY,this.maxX,this.maxY];if(Y===p.PathType.STROKE){J||(0,u.unreachable)("Stroke bounding box must include transform.");const re=u.Util.singularValueDecompose2dScale(J),ae=re[0]*this.lineWidth/2,V=re[1]*this.lineWidth/2;ee[0]-=ae,ee[1]-=V,ee[2]+=ae,ee[3]+=V}return ee}updateClipFromPath(){const Y=u.Util.intersect(this.clipBox,this.getPathBoundingBox());this.startNewPathAndClipBox(Y||[0,0,0,0])}isEmptyClip(){return this.minX===1/0}startNewPathAndClipBox(Y){this.clipBox=Y,this.minX=1/0,this.minY=1/0,this.maxX=0,this.maxY=0}getClippedPathBoundingBox(Y=p.PathType.FILL,J=null){return u.Util.intersect(this.clipBox,this.getPathBoundingBox(Y,J))}}function $(Q,Y){if(typeof ImageData<"u"&&Y instanceof ImageData){Q.putImageData(Y,0,0);return}const J=Y.height,ee=Y.width,re=J%m,ae=(J-re)/m,V=re===0?ae:ae+1,K=Q.createImageData(ee,m);let te=0,ie;const ce=Y.data,me=K.data;let we,ve,ge,ue;if(Y.kind===u.ImageKind.GRAYSCALE_1BPP){const se=ce.byteLength,oe=new Uint32Array(me.buffer,0,me.byteLength>>2),de=oe.length,le=ee+7>>3,xe=4294967295,Ce=u.FeatureTest.isLittleEndian?4278190080:255;for(we=0;we<V;we++){for(ge=we<ae?m:re,ie=0,ve=0;ve<ge;ve++){const $e=se-te;let Se=0;const Ee=$e>le?ee:$e*8-7,Ae=Ee&-8;let pe=0,he=0;for(;Se<Ae;Se+=8)he=ce[te++],oe[ie++]=he&128?xe:Ce,oe[ie++]=he&64?xe:Ce,oe[ie++]=he&32?xe:Ce,oe[ie++]=he&16?xe:Ce,oe[ie++]=he&8?xe:Ce,oe[ie++]=he&4?xe:Ce,oe[ie++]=he&2?xe:Ce,oe[ie++]=he&1?xe:Ce;for(;Se<Ee;Se++)pe===0&&(he=ce[te++],pe=128),oe[ie++]=he&pe?xe:Ce,pe>>=1}for(;ie<de;)oe[ie++]=0;Q.putImageData(K,0,we*m)}}else if(Y.kind===u.ImageKind.RGBA_32BPP){for(ve=0,ue=ee*m*4,we=0;we<ae;we++)me.set(ce.subarray(te,te+ue)),te+=ue,Q.putImageData(K,0,ve),ve+=m;we<V&&(ue=ee*re*4,me.set(ce.subarray(te,te+ue)),Q.putImageData(K,0,ve))}else if(Y.kind===u.ImageKind.RGB_24BPP)for(ge=m,ue=ee*ge,we=0;we<V;we++){for(we>=ae&&(ge=re,ue=ee*ge),ie=0,ve=ue;ve--;)me[ie++]=ce[te++],me[ie++]=ce[te++],me[ie++]=ce[te++],me[ie++]=255;Q.putImageData(K,0,we*m)}else throw new Error(`bad image kind: ${Y.kind}`)}function P(Q,Y){if(Y.bitmap){Q.drawImage(Y.bitmap,0,0);return}const J=Y.height,ee=Y.width,re=J%m,ae=(J-re)/m,V=re===0?ae:ae+1,K=Q.createImageData(ee,m);let te=0;const ie=Y.data,ce=K.data;for(let me=0;me<V;me++){const we=me<ae?m:re;({srcPos:te}=(0,v.convertBlackAndWhiteToRGBA)({src:ie,srcPos:te,dest:ce,width:ee,height:we,nonBlackColor:0})),Q.putImageData(K,0,me*m)}}function E(Q,Y){const J=["strokeStyle","fillStyle","fillRule","globalAlpha","lineWidth","lineCap","lineJoin","miterLimit","globalCompositeOperation","font","filter"];for(const ee of J)Q[ee]!==void 0&&(Y[ee]=Q[ee]);Q.setLineDash!==void 0&&(Y.setLineDash(Q.getLineDash()),Y.lineDashOffset=Q.lineDashOffset)}function R(Q){if(Q.strokeStyle=Q.fillStyle="#000000",Q.fillRule="nonzero",Q.globalAlpha=1,Q.lineWidth=1,Q.lineCap="butt",Q.lineJoin="miter",Q.miterLimit=10,Q.globalCompositeOperation="source-over",Q.font="10px sans-serif",Q.setLineDash!==void 0&&(Q.setLineDash([]),Q.lineDashOffset=0),!u.isNodeJS){const{filter:Y}=Q;Y!=="none"&&Y!==""&&(Q.filter="none")}}function T(Q,Y,J,ee){const re=Q.length;for(let ae=3;ae<re;ae+=4){const V=Q[ae];if(V===0)Q[ae-3]=Y,Q[ae-2]=J,Q[ae-1]=ee;else if(V<255){const K=255-V;Q[ae-3]=Q[ae-3]*V+Y*K>>8,Q[ae-2]=Q[ae-2]*V+J*K>>8,Q[ae-1]=Q[ae-1]*V+ee*K>>8}}}function B(Q,Y,J){const ee=Q.length,re=1/255;for(let ae=3;ae<ee;ae+=4){const V=J?J[Q[ae]]:Q[ae];Y[ae]=Y[ae]*V*re|0}}function M(Q,Y,J){const ee=Q.length;for(let re=3;re<ee;re+=4){const ae=Q[re-3]*77+Q[re-2]*152+Q[re-1]*28;Y[re]=J?Y[re]*J[ae>>8]>>8:Y[re]*ae>>16}}function k(Q,Y,J,ee,re,ae,V,K,te,ie,ce){const me=!!ae,we=me?ae[0]:0,ve=me?ae[1]:0,ge=me?ae[2]:0,ue=re==="Luminosity"?M:B,oe=Math.min(ee,Math.ceil(1048576/J));for(let de=0;de<ee;de+=oe){const le=Math.min(oe,ee-de),xe=Q.getImageData(K-ie,de+(te-ce),J,le),Ce=Y.getImageData(K,de+te,J,le);me&&T(xe.data,we,ve,ge),ue(xe.data,Ce.data,V),Y.putImageData(Ce,K,de+te)}}function O(Q,Y,J,ee){const re=ee[0],ae=ee[1],V=ee[2]-re,K=ee[3]-ae;V===0||K===0||(k(Y.context,J,V,K,Y.subtype,Y.backdrop,Y.transferMap,re,ae,Y.offsetX,Y.offsetY),Q.save(),Q.globalAlpha=1,Q.globalCompositeOperation="source-over",Q.setTransform(1,0,0,1,0,0),Q.drawImage(J.canvas,0,0),Q.restore())}function H(Q,Y){const J=u.Util.singularValueDecompose2dScale(Q);J[0]=Math.fround(J[0]),J[1]=Math.fround(J[1]);const ee=Math.fround((globalThis.devicePixelRatio||1)*d.PixelsPerInch.PDF_TO_CSS_UNITS);return Y!==void 0?Y:J[0]<=ee||J[1]<=ee}const j=["butt","round","square"],q=["miter","round","bevel"],L={},F={},Z=class Z{constructor(Y,J,ee,re,ae,{optionalContentConfig:V,markedContentStack:K=null},te,ie){bt(this,N);this.ctx=Y,this.current=new I(this.ctx.canvas.width,this.ctx.canvas.height),this.stateStack=[],this.pendingClip=null,this.pendingEOFill=!1,this.res=null,this.xobjs=null,this.commonObjs=J,this.objs=ee,this.canvasFactory=re,this.filterFactory=ae,this.groupStack=[],this.processingType3=null,this.baseTransform=null,this.baseTransformStack=[],this.groupLevel=0,this.smaskStack=[],this.smaskCounter=0,this.tempSMask=null,this.suspendedCtx=null,this.contentVisible=!0,this.markedContentStack=K||[],this.optionalContentConfig=V,this.cachedCanvases=new S(this.canvasFactory),this.cachedPatterns=new Map,this.annotationCanvasMap=te,this.viewportScale=1,this.outputScaleX=1,this.outputScaleY=1,this.pageColors=ie,this._cachedScaleForStroking=[-1,0],this._cachedGetSinglePixelWidth=null,this._cachedBitmapsMap=new Map}getObject(Y,J=null){return typeof Y=="string"?Y.startsWith("g_")?this.commonObjs.get(Y):this.objs.get(Y):J}beginDrawing({transform:Y,viewport:J,transparency:ee=!1,background:re=null}){const ae=this.ctx.canvas.width,V=this.ctx.canvas.height,K=this.ctx.fillStyle;if(this.ctx.fillStyle=re||"#ffffff",this.ctx.fillRect(0,0,ae,V),this.ctx.fillStyle=K,ee){const te=this.cachedCanvases.getCanvas("transparent",ae,V);this.compositeCtx=this.ctx,this.transparentCanvas=te.canvas,this.ctx=te.context,this.ctx.save(),this.ctx.transform(...(0,d.getCurrentTransform)(this.compositeCtx))}this.ctx.save(),R(this.ctx),Y&&(this.ctx.transform(...Y),this.outputScaleX=Y[0],this.outputScaleY=Y[0]),this.ctx.transform(...J.transform),this.viewportScale=J.scale,this.baseTransform=(0,d.getCurrentTransform)(this.ctx)}executeOperatorList(Y,J,ee,re){const ae=Y.argsArray,V=Y.fnArray;let K=J||0;const te=ae.length;if(te===K)return K;const ie=te-K>y&&typeof ee=="function",ce=ie?Date.now()+x:0;let me=0;const we=this.commonObjs,ve=this.objs;let ge;for(;;){if(re!==void 0&&K===re.nextBreakPoint)return re.breakIt(K,ee),K;if(ge=V[K],ge!==u.OPS.dependency)this[ge].apply(this,ae[K]);else for(const ue of ae[K]){const se=ue.startsWith("g_")?we:ve;if(!se.has(ue))return se.get(ue,ee),K}if(K++,K===te)return K;if(ie&&++me>y){if(Date.now()>ce)return ee(),K;me=0}}}endDrawing(){it(this,N,il).call(this),this.cachedCanvases.clear(),this.cachedPatterns.clear();for(const Y of this._cachedBitmapsMap.values()){for(const J of Y.values())typeof HTMLCanvasElement<"u"&&J instanceof HTMLCanvasElement&&(J.width=J.height=0);Y.clear()}this._cachedBitmapsMap.clear(),it(this,N,ol).call(this)}_scaleImage(Y,J){const ee=Y.width,re=Y.height;let ae=Math.max(Math.hypot(J[0],J[1]),1),V=Math.max(Math.hypot(J[2],J[3]),1),K=ee,te=re,ie="prescale1",ce,me;for(;ae>2&&K>1||V>2&&te>1;){let we=K,ve=te;ae>2&&K>1&&(we=K>=16384?Math.floor(K/2)-1||1:Math.ceil(K/2),ae/=K/we),V>2&&te>1&&(ve=te>=16384?Math.floor(te/2)-1||1:Math.ceil(te)/2,V/=te/ve),ce=this.cachedCanvases.getCanvas(ie,we,ve),me=ce.context,me.clearRect(0,0,we,ve),me.drawImage(Y,0,0,K,te,0,0,we,ve),Y=ce.canvas,K=we,te=ve,ie=ie==="prescale1"?"prescale2":"prescale1"}return{img:Y,paintWidth:K,paintHeight:te}}_createMaskCanvas(Y){const J=this.ctx,{width:ee,height:re}=Y,ae=this.current.fillColor,V=this.current.patternFill,K=(0,d.getCurrentTransform)(J);let te,ie,ce,me;if((Y.bitmap||Y.data)&&Y.count>1){const Se=Y.bitmap||Y.data.buffer;ie=JSON.stringify(V?K:[K.slice(0,4),ae]),te=this._cachedBitmapsMap.get(Se),te||(te=new Map,this._cachedBitmapsMap.set(Se,te));const Ee=te.get(ie);if(Ee&&!V){const Ae=Math.round(Math.min(K[0],K[2])+K[4]),pe=Math.round(Math.min(K[1],K[3])+K[5]);return{canvas:Ee,offsetX:Ae,offsetY:pe}}ce=Ee}ce||(me=this.cachedCanvases.getCanvas("maskCanvas",ee,re),P(me.context,Y));let we=u.Util.transform(K,[1/ee,0,0,-1/re,0,0]);we=u.Util.transform(we,[1,0,0,1,0,-re]);const ve=u.Util.applyTransform([0,0],we),ge=u.Util.applyTransform([ee,re],we),ue=u.Util.normalizeRect([ve[0],ve[1],ge[0],ge[1]]),se=Math.round(ue[2]-ue[0])||1,oe=Math.round(ue[3]-ue[1])||1,de=this.cachedCanvases.getCanvas("fillCanvas",se,oe),le=de.context,xe=Math.min(ve[0],ge[0]),Ce=Math.min(ve[1],ge[1]);le.translate(-xe,-Ce),le.transform(...we),ce||(ce=this._scaleImage(me.canvas,(0,d.getCurrentTransformInverse)(le)),ce=ce.img,te&&V&&te.set(ie,ce)),le.imageSmoothingEnabled=H((0,d.getCurrentTransform)(le),Y.interpolate),w(le,ce,0,0,ce.width,ce.height,0,0,ee,re),le.globalCompositeOperation="source-in";const $e=u.Util.transform((0,d.getCurrentTransformInverse)(le),[1,0,0,1,-xe,-Ce]);return le.fillStyle=V?ae.getPattern(J,this,$e,p.PathType.FILL):ae,le.fillRect(0,0,ee,re),te&&!V&&(this.cachedCanvases.delete("fillCanvas"),te.set(ie,de.canvas)),{canvas:de.canvas,offsetX:Math.round(xe),offsetY:Math.round(Ce)}}setLineWidth(Y){Y!==this.current.lineWidth&&(this._cachedScaleForStroking[0]=-1),this.current.lineWidth=Y,this.ctx.lineWidth=Y}setLineCap(Y){this.ctx.lineCap=j[Y]}setLineJoin(Y){this.ctx.lineJoin=q[Y]}setMiterLimit(Y){this.ctx.miterLimit=Y}setDash(Y,J){const ee=this.ctx;ee.setLineDash!==void 0&&(ee.setLineDash(Y),ee.lineDashOffset=J)}setRenderingIntent(Y){}setFlatness(Y){}setGState(Y){for(const[J,ee]of Y)switch(J){case"LW":this.setLineWidth(ee);break;case"LC":this.setLineCap(ee);break;case"LJ":this.setLineJoin(ee);break;case"ML":this.setMiterLimit(ee);break;case"D":this.setDash(ee[0],ee[1]);break;case"RI":this.setRenderingIntent(ee);break;case"FL":this.setFlatness(ee);break;case"Font":this.setFont(ee[0],ee[1]);break;case"CA":this.current.strokeAlpha=ee;break;case"ca":this.current.fillAlpha=ee,this.ctx.globalAlpha=ee;break;case"BM":this.ctx.globalCompositeOperation=ee;break;case"SMask":this.current.activeSMask=ee?this.tempSMask:null,this.tempSMask=null,this.checkSMaskState();break;case"TR":this.ctx.filter=this.current.transferMaps=this.filterFactory.addFilter(ee);break}}get inSMaskMode(){return!!this.suspendedCtx}checkSMaskState(){const Y=this.inSMaskMode;this.current.activeSMask&&!Y?this.beginSMaskMode():!this.current.activeSMask&&Y&&this.endSMaskMode()}beginSMaskMode(){if(this.inSMaskMode)throw new Error("beginSMaskMode called while already in smask mode");const Y=this.ctx.canvas.width,J=this.ctx.canvas.height,ee="smaskGroupAt"+this.groupLevel,re=this.cachedCanvases.getCanvas(ee,Y,J);this.suspendedCtx=this.ctx,this.ctx=re.context;const ae=this.ctx;ae.setTransform(...(0,d.getCurrentTransform)(this.suspendedCtx)),E(this.suspendedCtx,ae),C(ae,this.suspendedCtx),this.setGState([["BM","source-over"],["ca",1],["CA",1]])}endSMaskMode(){if(!this.inSMaskMode)throw new Error("endSMaskMode called while not in smask mode");this.ctx._removeMirroring(),E(this.ctx,this.suspendedCtx),this.ctx=this.suspendedCtx,this.suspendedCtx=null}compose(Y){if(!this.current.activeSMask)return;Y?(Y[0]=Math.floor(Y[0]),Y[1]=Math.floor(Y[1]),Y[2]=Math.ceil(Y[2]),Y[3]=Math.ceil(Y[3])):Y=[0,0,this.ctx.canvas.width,this.ctx.canvas.height];const J=this.current.activeSMask,ee=this.suspendedCtx;O(ee,J,this.ctx,Y),this.ctx.save(),this.ctx.setTransform(1,0,0,1,0,0),this.ctx.clearRect(0,0,this.ctx.canvas.width,this.ctx.canvas.height),this.ctx.restore()}save(){this.inSMaskMode?(E(this.ctx,this.suspendedCtx),this.suspendedCtx.save()):this.ctx.save();const Y=this.current;this.stateStack.push(Y),this.current=Y.clone()}restore(){this.stateStack.length===0&&this.inSMaskMode&&this.endSMaskMode(),this.stateStack.length!==0&&(this.current=this.stateStack.pop(),this.inSMaskMode?(this.suspendedCtx.restore(),E(this.suspendedCtx,this.ctx)):this.ctx.restore(),this.checkSMaskState(),this.pendingClip=null,this._cachedScaleForStroking[0]=-1,this._cachedGetSinglePixelWidth=null)}transform(Y,J,ee,re,ae,V){this.ctx.transform(Y,J,ee,re,ae,V),this._cachedScaleForStroking[0]=-1,this._cachedGetSinglePixelWidth=null}constructPath(Y,J,ee){const re=this.ctx,ae=this.current;let V=ae.x,K=ae.y,te,ie;const ce=(0,d.getCurrentTransform)(re),me=ce[0]===0&&ce[3]===0||ce[1]===0&&ce[2]===0,we=me?ee.slice(0):null;for(let ve=0,ge=0,ue=Y.length;ve<ue;ve++)switch(Y[ve]|0){case u.OPS.rectangle:V=J[ge++],K=J[ge++];const se=J[ge++],oe=J[ge++],de=V+se,le=K+oe;re.moveTo(V,K),se===0||oe===0?re.lineTo(de,le):(re.lineTo(de,K),re.lineTo(de,le),re.lineTo(V,le)),me||ae.updateRectMinMax(ce,[V,K,de,le]),re.closePath();break;case u.OPS.moveTo:V=J[ge++],K=J[ge++],re.moveTo(V,K),me||ae.updatePathMinMax(ce,V,K);break;case u.OPS.lineTo:V=J[ge++],K=J[ge++],re.lineTo(V,K),me||ae.updatePathMinMax(ce,V,K);break;case u.OPS.curveTo:te=V,ie=K,V=J[ge+4],K=J[ge+5],re.bezierCurveTo(J[ge],J[ge+1],J[ge+2],J[ge+3],V,K),ae.updateCurvePathMinMax(ce,te,ie,J[ge],J[ge+1],J[ge+2],J[ge+3],V,K,we),ge+=6;break;case u.OPS.curveTo2:te=V,ie=K,re.bezierCurveTo(V,K,J[ge],J[ge+1],J[ge+2],J[ge+3]),ae.updateCurvePathMinMax(ce,te,ie,V,K,J[ge],J[ge+1],J[ge+2],J[ge+3],we),V=J[ge+2],K=J[ge+3],ge+=4;break;case u.OPS.curveTo3:te=V,ie=K,V=J[ge+2],K=J[ge+3],re.bezierCurveTo(J[ge],J[ge+1],V,K,V,K),ae.updateCurvePathMinMax(ce,te,ie,J[ge],J[ge+1],V,K,V,K,we),ge+=4;break;case u.OPS.closePath:re.closePath();break}me&&ae.updateScalingPathMinMax(ce,we),ae.setCurrentPoint(V,K)}closePath(){this.ctx.closePath()}stroke(Y=!0){const J=this.ctx,ee=this.current.strokeColor;J.globalAlpha=this.current.strokeAlpha,this.contentVisible&&(typeof ee=="object"&&(ee!=null&&ee.getPattern)?(J.save(),J.strokeStyle=ee.getPattern(J,this,(0,d.getCurrentTransformInverse)(J),p.PathType.STROKE),this.rescaleAndStroke(!1),J.restore()):this.rescaleAndStroke(!0)),Y&&this.consumePath(this.current.getClippedPathBoundingBox()),J.globalAlpha=this.current.fillAlpha}closeStroke(){this.closePath(),this.stroke()}fill(Y=!0){const J=this.ctx,ee=this.current.fillColor,re=this.current.patternFill;let ae=!1;re&&(J.save(),J.fillStyle=ee.getPattern(J,this,(0,d.getCurrentTransformInverse)(J),p.PathType.FILL),ae=!0);const V=this.current.getClippedPathBoundingBox();this.contentVisible&&V!==null&&(this.pendingEOFill?(J.fill("evenodd"),this.pendingEOFill=!1):J.fill()),ae&&J.restore(),Y&&this.consumePath(V)}eoFill(){this.pendingEOFill=!0,this.fill()}fillStroke(){this.fill(!1),this.stroke(!1),this.consumePath()}eoFillStroke(){this.pendingEOFill=!0,this.fillStroke()}closeFillStroke(){this.closePath(),this.fillStroke()}closeEOFillStroke(){this.pendingEOFill=!0,this.closePath(),this.fillStroke()}endPath(){this.consumePath()}clip(){this.pendingClip=L}eoClip(){this.pendingClip=F}beginText(){this.current.textMatrix=u.IDENTITY_MATRIX,this.current.textMatrixScale=1,this.current.x=this.current.lineX=0,this.current.y=this.current.lineY=0}endText(){const Y=this.pendingTextPaths,J=this.ctx;if(Y===void 0){J.beginPath();return}J.save(),J.beginPath();for(const ee of Y)J.setTransform(...ee.transform),J.translate(ee.x,ee.y),ee.addToPath(J,ee.fontSize);J.restore(),J.clip(),J.beginPath(),delete this.pendingTextPaths}setCharSpacing(Y){this.current.charSpacing=Y}setWordSpacing(Y){this.current.wordSpacing=Y}setHScale(Y){this.current.textHScale=Y/100}setLeading(Y){this.current.leading=-Y}setFont(Y,J){var ce;const ee=this.commonObjs.get(Y),re=this.current;if(!ee)throw new Error(`Can't find font for ${Y}`);if(re.fontMatrix=ee.fontMatrix||u.FONT_IDENTITY_MATRIX,(re.fontMatrix[0]===0||re.fontMatrix[3]===0)&&(0,u.warn)("Invalid font matrix for font "+Y),J<0?(J=-J,re.fontDirection=-1):re.fontDirection=1,this.current.font=ee,this.current.fontSize=J,ee.isType3Font)return;const ae=ee.loadedName||"sans-serif",V=((ce=ee.systemFontInfo)==null?void 0:ce.css)||`"${ae}", ${ee.fallbackName}`;let K="normal";ee.black?K="900":ee.bold&&(K="bold");const te=ee.italic?"italic":"normal";let ie=J;J<A?ie=A:J>b&&(ie=b),this.current.fontSizeScale=J/ie,this.ctx.font=`${te} ${K} ${ie}px ${V}`}setTextRenderingMode(Y){this.current.textRenderingMode=Y}setTextRise(Y){this.current.textRise=Y}moveText(Y,J){this.current.x=this.current.lineX+=Y,this.current.y=this.current.lineY+=J}setLeadingMoveText(Y,J){this.setLeading(-J),this.moveText(Y,J)}setTextMatrix(Y,J,ee,re,ae,V){this.current.textMatrix=[Y,J,ee,re,ae,V],this.current.textMatrixScale=Math.hypot(Y,J),this.current.x=this.current.lineX=0,this.current.y=this.current.lineY=0}nextLine(){this.moveText(0,this.current.leading)}paintChar(Y,J,ee,re){const ae=this.ctx,V=this.current,K=V.font,te=V.textRenderingMode,ie=V.fontSize/V.fontSizeScale,ce=te&u.TextRenderingMode.FILL_STROKE_MASK,me=!!(te&u.TextRenderingMode.ADD_TO_PATH_FLAG),we=V.patternFill&&!K.missingFile;let ve;(K.disableFontFace||me||we)&&(ve=K.getPathGenerator(this.commonObjs,Y)),K.disableFontFace||we?(ae.save(),ae.translate(J,ee),ae.beginPath(),ve(ae,ie),re&&ae.setTransform(...re),(ce===u.TextRenderingMode.FILL||ce===u.TextRenderingMode.FILL_STROKE)&&ae.fill(),(ce===u.TextRenderingMode.STROKE||ce===u.TextRenderingMode.FILL_STROKE)&&ae.stroke(),ae.restore()):((ce===u.TextRenderingMode.FILL||ce===u.TextRenderingMode.FILL_STROKE)&&ae.fillText(Y,J,ee),(ce===u.TextRenderingMode.STROKE||ce===u.TextRenderingMode.FILL_STROKE)&&ae.strokeText(Y,J,ee)),me&&(this.pendingTextPaths||(this.pendingTextPaths=[])).push({transform:(0,d.getCurrentTransform)(ae),x:J,y:ee,fontSize:ie,addToPath:ve})}get isFontSubpixelAAEnabled(){const{context:Y}=this.cachedCanvases.getCanvas("isFontSubpixelAAEnabled",10,10);Y.scale(1.5,1),Y.fillText("I",0,10);const J=Y.getImageData(0,0,10,10).data;let ee=!1;for(let re=3;re<J.length;re+=4)if(J[re]>0&&J[re]<255){ee=!0;break}return(0,u.shadow)(this,"isFontSubpixelAAEnabled",ee)}showText(Y){const J=this.current,ee=J.font;if(ee.isType3Font)return this.showType3Text(Y);const re=J.fontSize;if(re===0)return;const ae=this.ctx,V=J.fontSizeScale,K=J.charSpacing,te=J.wordSpacing,ie=J.fontDirection,ce=J.textHScale*ie,me=Y.length,we=ee.vertical,ve=we?1:-1,ge=ee.defaultVMetrics,ue=re*J.fontMatrix[0],se=J.textRenderingMode===u.TextRenderingMode.FILL&&!ee.disableFontFace&&!J.patternFill;ae.save(),ae.transform(...J.textMatrix),ae.translate(J.x,J.y+J.textRise),ie>0?ae.scale(ce,-1):ae.scale(ce,1);let oe;if(J.patternFill){ae.save();const $e=J.fillColor.getPattern(ae,this,(0,d.getCurrentTransformInverse)(ae),p.PathType.FILL);oe=(0,d.getCurrentTransform)(ae),ae.restore(),ae.fillStyle=$e}let de=J.lineWidth;const le=J.textMatrixScale;if(le===0||de===0){const $e=J.textRenderingMode&u.TextRenderingMode.FILL_STROKE_MASK;($e===u.TextRenderingMode.STROKE||$e===u.TextRenderingMode.FILL_STROKE)&&(de=this.getSinglePixelWidth())}else de/=le;if(V!==1&&(ae.scale(V,V),de/=V),ae.lineWidth=de,ee.isInvalidPDFjsFont){const $e=[];let Se=0;for(const Ee of Y)$e.push(Ee.unicode),Se+=Ee.width;ae.fillText($e.join(""),0,0),J.x+=Se*ue*ce,ae.restore(),this.compose();return}let xe=0,Ce;for(Ce=0;Ce<me;++Ce){const $e=Y[Ce];if(typeof $e=="number"){xe+=ve*$e*re/1e3;continue}let Se=!1;const Ee=($e.isSpace?te:0)+K,Ae=$e.fontChar,pe=$e.accent;let he,Ie,ye=$e.width;if(we){const Ne=$e.vmetric||ge,Le=-($e.vmetric?Ne[1]:ye*.5)*ue,Oe=Ne[2]*ue;ye=Ne?-Ne[0]:ye,he=Le/V,Ie=(xe+Oe)/V}else he=xe/V,Ie=0;if(ee.remeasure&&ye>0){const Ne=ae.measureText(Ae).width*1e3/re*V;if(ye<Ne&&this.isFontSubpixelAAEnabled){const Le=ye/Ne;Se=!0,ae.save(),ae.scale(Le,1),he/=Le}else ye!==Ne&&(he+=(ye-Ne)/2e3*re/V)}if(this.contentVisible&&($e.isInFont||ee.missingFile)){if(se&&!pe)ae.fillText(Ae,he,Ie);else if(this.paintChar(Ae,he,Ie,oe),pe){const Ne=he+re*pe.offset.x/V,Le=Ie-re*pe.offset.y/V;this.paintChar(pe.fontChar,Ne,Le,oe)}}const Pe=we?ye*ue-Ee*ie:ye*ue+Ee*ie;xe+=Pe,Se&&ae.restore()}we?J.y-=xe:J.x+=xe*ce,ae.restore(),this.compose()}showType3Text(Y){const J=this.ctx,ee=this.current,re=ee.font,ae=ee.fontSize,V=ee.fontDirection,K=re.vertical?1:-1,te=ee.charSpacing,ie=ee.wordSpacing,ce=ee.textHScale*V,me=ee.fontMatrix||u.FONT_IDENTITY_MATRIX,we=Y.length,ve=ee.textRenderingMode===u.TextRenderingMode.INVISIBLE;let ge,ue,se,oe;if(!(ve||ae===0)){for(this._cachedScaleForStroking[0]=-1,this._cachedGetSinglePixelWidth=null,J.save(),J.transform(...ee.textMatrix),J.translate(ee.x,ee.y),J.scale(ce,V),ge=0;ge<we;++ge){if(ue=Y[ge],typeof ue=="number"){oe=K*ue*ae/1e3,this.ctx.translate(oe,0),ee.x+=oe*ce;continue}const de=(ue.isSpace?ie:0)+te,le=re.charProcOperatorList[ue.operatorListId];if(!le){(0,u.warn)(`Type3 character "${ue.operatorListId}" is not available.`);continue}this.contentVisible&&(this.processingType3=ue,this.save(),J.scale(ae,ae),J.transform(...me),this.executeOperatorList(le),this.restore()),se=u.Util.applyTransform([ue.width,0],me)[0]*ae+de,J.translate(se,0),ee.x+=se*ce}J.restore(),this.processingType3=null}}setCharWidth(Y,J){}setCharWidthAndBounds(Y,J,ee,re,ae,V){this.ctx.rect(ee,re,ae-ee,V-re),this.ctx.clip(),this.endPath()}getColorN_Pattern(Y){let J;if(Y[0]==="TilingPattern"){const ee=Y[1],re=this.baseTransform||(0,d.getCurrentTransform)(this.ctx),ae={createCanvasGraphics:V=>new Z(V,this.commonObjs,this.objs,this.canvasFactory,this.filterFactory,{optionalContentConfig:this.optionalContentConfig,markedContentStack:this.markedContentStack})};J=new p.TilingPattern(Y,ee,this.ctx,ae,re)}else J=this._getPattern(Y[1],Y[2]);return J}setStrokeColorN(){this.current.strokeColor=this.getColorN_Pattern(arguments)}setFillColorN(){this.current.fillColor=this.getColorN_Pattern(arguments),this.current.patternFill=!0}setStrokeRGBColor(Y,J,ee){const re=u.Util.makeHexColor(Y,J,ee);this.ctx.strokeStyle=re,this.current.strokeColor=re}setFillRGBColor(Y,J,ee){const re=u.Util.makeHexColor(Y,J,ee);this.ctx.fillStyle=re,this.current.fillColor=re,this.current.patternFill=!1}_getPattern(Y,J=null){let ee;return this.cachedPatterns.has(Y)?ee=this.cachedPatterns.get(Y):(ee=(0,p.getShadingPattern)(this.getObject(Y)),this.cachedPatterns.set(Y,ee)),J&&(ee.matrix=J),ee}shadingFill(Y){if(!this.contentVisible)return;const J=this.ctx;this.save();const ee=this._getPattern(Y);J.fillStyle=ee.getPattern(J,this,(0,d.getCurrentTransformInverse)(J),p.PathType.SHADING);const re=(0,d.getCurrentTransformInverse)(J);if(re){const{width:ae,height:V}=J.canvas,[K,te,ie,ce]=u.Util.getAxialAlignedBoundingBox([0,0,ae,V],re);this.ctx.fillRect(K,te,ie-K,ce-te)}else this.ctx.fillRect(-1e10,-1e10,2e10,2e10);this.compose(this.current.getClippedPathBoundingBox()),this.restore()}beginInlineImage(){(0,u.unreachable)("Should not call beginInlineImage")}beginImageData(){(0,u.unreachable)("Should not call beginImageData")}paintFormXObjectBegin(Y,J){if(this.contentVisible&&(this.save(),this.baseTransformStack.push(this.baseTransform),Array.isArray(Y)&&Y.length===6&&this.transform(...Y),this.baseTransform=(0,d.getCurrentTransform)(this.ctx),J)){const ee=J[2]-J[0],re=J[3]-J[1];this.ctx.rect(J[0],J[1],ee,re),this.current.updateRectMinMax((0,d.getCurrentTransform)(this.ctx),J),this.clip(),this.endPath()}}paintFormXObjectEnd(){this.contentVisible&&(this.restore(),this.baseTransform=this.baseTransformStack.pop())}beginGroup(Y){if(!this.contentVisible)return;this.save(),this.inSMaskMode&&(this.endSMaskMode(),this.current.activeSMask=null);const J=this.ctx;Y.isolated||(0,u.info)("TODO: Support non-isolated groups."),Y.knockout&&(0,u.warn)("Knockout groups not supported.");const ee=(0,d.getCurrentTransform)(J);if(Y.matrix&&J.transform(...Y.matrix),!Y.bbox)throw new Error("Bounding box is required.");let re=u.Util.getAxialAlignedBoundingBox(Y.bbox,(0,d.getCurrentTransform)(J));const ae=[0,0,J.canvas.width,J.canvas.height];re=u.Util.intersect(re,ae)||[0,0,0,0];const V=Math.floor(re[0]),K=Math.floor(re[1]);let te=Math.max(Math.ceil(re[2])-V,1),ie=Math.max(Math.ceil(re[3])-K,1),ce=1,me=1;te>g&&(ce=te/g,te=g),ie>g&&(me=ie/g,ie=g),this.current.startNewPathAndClipBox([0,0,te,ie]);let we="groupAt"+this.groupLevel;Y.smask&&(we+="_smask_"+this.smaskCounter++%2);const ve=this.cachedCanvases.getCanvas(we,te,ie),ge=ve.context;ge.scale(1/ce,1/me),ge.translate(-V,-K),ge.transform(...ee),Y.smask?this.smaskStack.push({canvas:ve.canvas,context:ge,offsetX:V,offsetY:K,scaleX:ce,scaleY:me,subtype:Y.smask.subtype,backdrop:Y.smask.backdrop,transferMap:Y.smask.transferMap||null,startTransformInverse:null}):(J.setTransform(1,0,0,1,0,0),J.translate(V,K),J.scale(ce,me),J.save()),E(J,ge),this.ctx=ge,this.setGState([["BM","source-over"],["ca",1],["CA",1]]),this.groupStack.push(J),this.groupLevel++}endGroup(Y){if(!this.contentVisible)return;this.groupLevel--;const J=this.ctx,ee=this.groupStack.pop();if(this.ctx=ee,this.ctx.imageSmoothingEnabled=!1,Y.smask)this.tempSMask=this.smaskStack.pop(),this.restore();else{this.ctx.restore();const re=(0,d.getCurrentTransform)(this.ctx);this.restore(),this.ctx.save(),this.ctx.setTransform(...re);const ae=u.Util.getAxialAlignedBoundingBox([0,0,J.canvas.width,J.canvas.height],re);this.ctx.drawImage(J.canvas,0,0),this.ctx.restore(),this.compose(ae)}}beginAnnotation(Y,J,ee,re,ae){if(it(this,N,il).call(this),R(this.ctx),this.ctx.save(),this.save(),this.baseTransform&&this.ctx.setTransform(...this.baseTransform),Array.isArray(J)&&J.length===4){const V=J[2]-J[0],K=J[3]-J[1];if(ae&&this.annotationCanvasMap){ee=ee.slice(),ee[4]-=J[0],ee[5]-=J[1],J=J.slice(),J[0]=J[1]=0,J[2]=V,J[3]=K;const[te,ie]=u.Util.singularValueDecompose2dScale((0,d.getCurrentTransform)(this.ctx)),{viewportScale:ce}=this,me=Math.ceil(V*this.outputScaleX*ce),we=Math.ceil(K*this.outputScaleY*ce);this.annotationCanvas=this.canvasFactory.create(me,we);const{canvas:ve,context:ge}=this.annotationCanvas;this.annotationCanvasMap.set(Y,ve),this.annotationCanvas.savedCtx=this.ctx,this.ctx=ge,this.ctx.save(),this.ctx.setTransform(te,0,0,-ie,0,K*ie),R(this.ctx)}else R(this.ctx),this.ctx.rect(J[0],J[1],V,K),this.ctx.clip(),this.endPath()}this.current=new I(this.ctx.canvas.width,this.ctx.canvas.height),this.transform(...ee),this.transform(...re)}endAnnotation(){this.annotationCanvas&&(this.ctx.restore(),it(this,N,ol).call(this),this.ctx=this.annotationCanvas.savedCtx,delete this.annotationCanvas.savedCtx,delete this.annotationCanvas)}paintImageMaskXObject(Y){if(!this.contentVisible)return;const J=Y.count;Y=this.getObject(Y.data,Y),Y.count=J;const ee=this.ctx,re=this.processingType3;if(re&&(re.compiled===void 0&&(re.compiled=_(Y)),re.compiled)){re.compiled(ee);return}const ae=this._createMaskCanvas(Y),V=ae.canvas;ee.save(),ee.setTransform(1,0,0,1,0,0),ee.drawImage(V,ae.offsetX,ae.offsetY),ee.restore(),this.compose()}paintImageMaskXObjectRepeat(Y,J,ee=0,re=0,ae,V){if(!this.contentVisible)return;Y=this.getObject(Y.data,Y);const K=this.ctx;K.save();const te=(0,d.getCurrentTransform)(K);K.transform(J,ee,re,ae,0,0);const ie=this._createMaskCanvas(Y);K.setTransform(1,0,0,1,ie.offsetX-te[4],ie.offsetY-te[5]);for(let ce=0,me=V.length;ce<me;ce+=2){const we=u.Util.transform(te,[J,ee,re,ae,V[ce],V[ce+1]]),[ve,ge]=u.Util.applyTransform([0,0],we);K.drawImage(ie.canvas,ve,ge)}K.restore(),this.compose()}paintImageMaskXObjectGroup(Y){if(!this.contentVisible)return;const J=this.ctx,ee=this.current.fillColor,re=this.current.patternFill;for(const ae of Y){const{data:V,width:K,height:te,transform:ie}=ae,ce=this.cachedCanvases.getCanvas("maskCanvas",K,te),me=ce.context;me.save();const we=this.getObject(V,ae);P(me,we),me.globalCompositeOperation="source-in",me.fillStyle=re?ee.getPattern(me,this,(0,d.getCurrentTransformInverse)(J),p.PathType.FILL):ee,me.fillRect(0,0,K,te),me.restore(),J.save(),J.transform(...ie),J.scale(1,-1),w(J,ce.canvas,0,0,K,te,0,-1,1,1),J.restore()}this.compose()}paintImageXObject(Y){if(!this.contentVisible)return;const J=this.getObject(Y);if(!J){(0,u.warn)("Dependent image isn't ready yet");return}this.paintInlineImageXObject(J)}paintImageXObjectRepeat(Y,J,ee,re){if(!this.contentVisible)return;const ae=this.getObject(Y);if(!ae){(0,u.warn)("Dependent image isn't ready yet");return}const V=ae.width,K=ae.height,te=[];for(let ie=0,ce=re.length;ie<ce;ie+=2)te.push({transform:[J,0,0,ee,re[ie],re[ie+1]],x:0,y:0,w:V,h:K});this.paintInlineImageXObjectGroup(ae,te)}applyTransferMapsToCanvas(Y){return this.current.transferMaps!=="none"&&(Y.filter=this.current.transferMaps,Y.drawImage(Y.canvas,0,0),Y.filter="none"),Y.canvas}applyTransferMapsToBitmap(Y){if(this.current.transferMaps==="none")return Y.bitmap;const{bitmap:J,width:ee,height:re}=Y,ae=this.cachedCanvases.getCanvas("inlineImage",ee,re),V=ae.context;return V.filter=this.current.transferMaps,V.drawImage(J,0,0),V.filter="none",ae.canvas}paintInlineImageXObject(Y){if(!this.contentVisible)return;const J=Y.width,ee=Y.height,re=this.ctx;if(this.save(),!u.isNodeJS){const{filter:K}=re;K!=="none"&&K!==""&&(re.filter="none")}re.scale(1/J,-1/ee);let ae;if(Y.bitmap)ae=this.applyTransferMapsToBitmap(Y);else if(typeof HTMLElement=="function"&&Y instanceof HTMLElement||!Y.data)ae=Y;else{const te=this.cachedCanvases.getCanvas("inlineImage",J,ee).context;$(te,Y),ae=this.applyTransferMapsToCanvas(te)}const V=this._scaleImage(ae,(0,d.getCurrentTransformInverse)(re));re.imageSmoothingEnabled=H((0,d.getCurrentTransform)(re),Y.interpolate),w(re,V.img,0,0,V.paintWidth,V.paintHeight,0,-ee,J,ee),this.compose(),this.restore()}paintInlineImageXObjectGroup(Y,J){if(!this.contentVisible)return;const ee=this.ctx;let re;if(Y.bitmap)re=Y.bitmap;else{const ae=Y.width,V=Y.height,te=this.cachedCanvases.getCanvas("inlineImage",ae,V).context;$(te,Y),re=this.applyTransferMapsToCanvas(te)}for(const ae of J)ee.save(),ee.transform(...ae.transform),ee.scale(1,-1),w(ee,re,ae.x,ae.y,ae.w,ae.h,0,-1,1,1),ee.restore();this.compose()}paintSolidColorImageMask(){this.contentVisible&&(this.ctx.fillRect(0,0,1,1),this.compose())}markPoint(Y){}markPointProps(Y,J){}beginMarkedContent(Y){this.markedContentStack.push({visible:!0})}beginMarkedContentProps(Y,J){Y==="OC"?this.markedContentStack.push({visible:this.optionalContentConfig.isVisible(J)}):this.markedContentStack.push({visible:!0}),this.contentVisible=this.isContentVisible()}endMarkedContent(){this.markedContentStack.pop(),this.contentVisible=this.isContentVisible()}beginCompat(){}endCompat(){}consumePath(Y){const J=this.current.isEmptyClip();this.pendingClip&&this.current.updateClipFromPath(),this.pendingClip||this.compose(Y);const ee=this.ctx;this.pendingClip&&(J||(this.pendingClip===F?ee.clip("evenodd"):ee.clip()),this.pendingClip=null),this.current.startNewPathAndClipBox(this.current.clipBox),ee.beginPath()}getSinglePixelWidth(){if(!this._cachedGetSinglePixelWidth){const Y=(0,d.getCurrentTransform)(this.ctx);if(Y[1]===0&&Y[2]===0)this._cachedGetSinglePixelWidth=1/Math.min(Math.abs(Y[0]),Math.abs(Y[3]));else{const J=Math.abs(Y[0]*Y[3]-Y[2]*Y[1]),ee=Math.hypot(Y[0],Y[2]),re=Math.hypot(Y[1],Y[3]);this._cachedGetSinglePixelWidth=Math.max(ee,re)/J}}return this._cachedGetSinglePixelWidth}getScaleForStroking(){if(this._cachedScaleForStroking[0]===-1){const{lineWidth:Y}=this.current,{a:J,b:ee,c:re,d:ae}=this.ctx.getTransform();let V,K;if(ee===0&&re===0){const te=Math.abs(J),ie=Math.abs(ae);if(te===ie)if(Y===0)V=K=1/te;else{const ce=te*Y;V=K=ce<1?1/ce:1}else if(Y===0)V=1/te,K=1/ie;else{const ce=te*Y,me=ie*Y;V=ce<1?1/ce:1,K=me<1?1/me:1}}else{const te=Math.abs(J*ae-ee*re),ie=Math.hypot(J,ee),ce=Math.hypot(re,ae);if(Y===0)V=ce/te,K=ie/te;else{const me=Y*te;V=ce>me?ce/me:1,K=ie>me?ie/me:1}}this._cachedScaleForStroking[0]=V,this._cachedScaleForStroking[1]=K}return this._cachedScaleForStroking}rescaleAndStroke(Y){const{ctx:J}=this,{lineWidth:ee}=this.current,[re,ae]=this.getScaleForStroking();if(J.lineWidth=ee||1,re===1&&ae===1){J.stroke();return}const V=J.getLineDash();if(Y&&J.save(),J.scale(re,ae),V.length>0){const K=Math.max(re,ae);J.setLineDash(V.map(te=>te/K)),J.lineDashOffset/=K}J.stroke(),Y&&J.restore()}isContentVisible(){for(let Y=this.markedContentStack.length-1;Y>=0;Y--)if(!this.markedContentStack[Y].visible)return!1;return!0}};N=new WeakSet,il=function(){for(;this.stateStack.length||this.inSMaskMode;)this.restore();this.ctx.restore(),this.transparentCanvas&&(this.ctx=this.compositeCtx,this.ctx.save(),this.ctx.setTransform(1,0,0,1,0,0),this.ctx.drawImage(this.transparentCanvas,0,0),this.ctx.restore(),this.transparentCanvas=null)},ol=function(){if(this.pageColors){const Y=this.filterFactory.addHCMFilter(this.pageColors.foreground,this.pageColors.background);if(Y!=="none"){const J=this.ctx.filter;this.ctx.filter=Y,this.ctx.drawImage(this.ctx.canvas,0,0),this.ctx.filter=J}}};let U=Z;s.CanvasGraphics=U;for(const Q in u.OPS)U.prototype[Q]!==void 0&&(U.prototype[u.OPS[Q]]=U.prototype[Q])},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.TilingPattern=s.PathType=void 0,s.getShadingPattern=m;var u=c(1),d=c(6);const p={FILL:"Fill",STROKE:"Stroke",SHADING:"Shading"};s.PathType=p;function v(_,I){if(!I)return;const $=I[2]-I[0],P=I[3]-I[1],E=new Path2D;E.rect(I[0],I[1],$,P),_.clip(E)}class A{constructor(){this.constructor===A&&(0,u.unreachable)("Cannot initialize BaseShadingPattern.")}getPattern(){(0,u.unreachable)("Abstract method `getPattern` called.")}}class b extends A{constructor(I){super(),this._type=I[1],this._bbox=I[2],this._colorStops=I[3],this._p0=I[4],this._p1=I[5],this._r0=I[6],this._r1=I[7],this.matrix=null}_createGradient(I){let $;this._type==="axial"?$=I.createLinearGradient(this._p0[0],this._p0[1],this._p1[0],this._p1[1]):this._type==="radial"&&($=I.createRadialGradient(this._p0[0],this._p0[1],this._r0,this._p1[0],this._p1[1],this._r1));for(const P of this._colorStops)$.addColorStop(P[0],P[1]);return $}getPattern(I,$,P,E){let R;if(E===p.STROKE||E===p.FILL){const T=$.current.getClippedPathBoundingBox(E,(0,d.getCurrentTransform)(I))||[0,0,0,0],B=Math.ceil(T[2]-T[0])||1,M=Math.ceil(T[3]-T[1])||1,k=$.cachedCanvases.getCanvas("pattern",B,M,!0),O=k.context;O.clearRect(0,0,O.canvas.width,O.canvas.height),O.beginPath(),O.rect(0,0,O.canvas.width,O.canvas.height),O.translate(-T[0],-T[1]),P=u.Util.transform(P,[1,0,0,1,T[0],T[1]]),O.transform(...$.baseTransform),this.matrix&&O.transform(...this.matrix),v(O,this._bbox),O.fillStyle=this._createGradient(O),O.fill(),R=I.createPattern(k.canvas,"no-repeat");const H=new DOMMatrix(P);R.setTransform(H)}else v(I,this._bbox),R=this._createGradient(I);return R}}function g(_,I,$,P,E,R,T,B){const M=I.coords,k=I.colors,O=_.data,H=_.width*4;let j;M[$+1]>M[P+1]&&(j=$,$=P,P=j,j=R,R=T,T=j),M[P+1]>M[E+1]&&(j=P,P=E,E=j,j=T,T=B,B=j),M[$+1]>M[P+1]&&(j=$,$=P,P=j,j=R,R=T,T=j);const q=(M[$]+I.offsetX)*I.scaleX,L=(M[$+1]+I.offsetY)*I.scaleY,F=(M[P]+I.offsetX)*I.scaleX,U=(M[P+1]+I.offsetY)*I.scaleY,N=(M[E]+I.offsetX)*I.scaleX,D=(M[E+1]+I.offsetY)*I.scaleY;if(L>=D)return;const W=k[R],Z=k[R+1],Q=k[R+2],Y=k[T],J=k[T+1],ee=k[T+2],re=k[B],ae=k[B+1],V=k[B+2],K=Math.round(L),te=Math.round(D);let ie,ce,me,we,ve,ge,ue,se;for(let oe=K;oe<=te;oe++){if(oe<U){const $e=oe<L?0:(L-oe)/(L-U);ie=q-(q-F)*$e,ce=W-(W-Y)*$e,me=Z-(Z-J)*$e,we=Q-(Q-ee)*$e}else{let $e;oe>D?$e=1:U===D?$e=0:$e=(U-oe)/(U-D),ie=F-(F-N)*$e,ce=Y-(Y-re)*$e,me=J-(J-ae)*$e,we=ee-(ee-V)*$e}let de;oe<L?de=0:oe>D?de=1:de=(L-oe)/(L-D),ve=q-(q-N)*de,ge=W-(W-re)*de,ue=Z-(Z-ae)*de,se=Q-(Q-V)*de;const le=Math.round(Math.min(ie,ve)),xe=Math.round(Math.max(ie,ve));let Ce=H*oe+le*4;for(let $e=le;$e<=xe;$e++)de=(ie-$e)/(ie-ve),de<0?de=0:de>1&&(de=1),O[Ce++]=ce-(ce-ge)*de|0,O[Ce++]=me-(me-ue)*de|0,O[Ce++]=we-(we-se)*de|0,O[Ce++]=255}}function x(_,I,$){const P=I.coords,E=I.colors;let R,T;switch(I.type){case"lattice":const B=I.verticesPerRow,M=Math.floor(P.length/B)-1,k=B-1;for(R=0;R<M;R++){let O=R*B;for(let H=0;H<k;H++,O++)g(_,$,P[O],P[O+1],P[O+B],E[O],E[O+1],E[O+B]),g(_,$,P[O+B+1],P[O+1],P[O+B],E[O+B+1],E[O+1],E[O+B])}break;case"triangles":for(R=0,T=P.length;R<T;R+=3)g(_,$,P[R],P[R+1],P[R+2],E[R],E[R+1],E[R+2]);break;default:throw new Error("illegal figure")}}class y extends A{constructor(I){super(),this._coords=I[2],this._colors=I[3],this._figures=I[4],this._bounds=I[5],this._bbox=I[7],this._background=I[8],this.matrix=null}_createMeshCanvas(I,$,P){const B=Math.floor(this._bounds[0]),M=Math.floor(this._bounds[1]),k=Math.ceil(this._bounds[2])-B,O=Math.ceil(this._bounds[3])-M,H=Math.min(Math.ceil(Math.abs(k*I[0]*1.1)),3e3),j=Math.min(Math.ceil(Math.abs(O*I[1]*1.1)),3e3),q=k/H,L=O/j,F={coords:this._coords,colors:this._colors,offsetX:-B,offsetY:-M,scaleX:1/q,scaleY:1/L},U=H+2*2,N=j+2*2,D=P.getCanvas("mesh",U,N,!1),W=D.context,Z=W.createImageData(H,j);if($){const Y=Z.data;for(let J=0,ee=Y.length;J<ee;J+=4)Y[J]=$[0],Y[J+1]=$[1],Y[J+2]=$[2],Y[J+3]=255}for(const Y of this._figures)x(Z,Y,F);return W.putImageData(Z,2,2),{canvas:D.canvas,offsetX:B-2*q,offsetY:M-2*L,scaleX:q,scaleY:L}}getPattern(I,$,P,E){v(I,this._bbox);let R;if(E===p.SHADING)R=u.Util.singularValueDecompose2dScale((0,d.getCurrentTransform)(I));else if(R=u.Util.singularValueDecompose2dScale($.baseTransform),this.matrix){const B=u.Util.singularValueDecompose2dScale(this.matrix);R=[R[0]*B[0],R[1]*B[1]]}const T=this._createMeshCanvas(R,E===p.SHADING?null:this._background,$.cachedCanvases);return E!==p.SHADING&&(I.setTransform(...$.baseTransform),this.matrix&&I.transform(...this.matrix)),I.translate(T.offsetX,T.offsetY),I.scale(T.scaleX,T.scaleY),I.createPattern(T.canvas,"no-repeat")}}class f extends A{getPattern(){return"hotpink"}}function m(_){switch(_[0]){case"RadialAxial":return new b(_);case"Mesh":return new y(_);case"Dummy":return new f}throw new Error(`Unknown IR type: ${_[0]}`)}const C={COLORED:1,UNCOLORED:2},w=class w{constructor(I,$,P,E,R){this.operatorList=I[2],this.matrix=I[3]||[1,0,0,1,0,0],this.bbox=I[4],this.xstep=I[5],this.ystep=I[6],this.paintType=I[7],this.tilingType=I[8],this.color=$,this.ctx=P,this.canvasGraphicsFactory=E,this.baseTransform=R}createPatternCanvas(I){const $=this.operatorList,P=this.bbox,E=this.xstep,R=this.ystep,T=this.paintType,B=this.tilingType,M=this.color,k=this.canvasGraphicsFactory;(0,u.info)("TilingType: "+B);const O=P[0],H=P[1],j=P[2],q=P[3],L=u.Util.singularValueDecompose2dScale(this.matrix),F=u.Util.singularValueDecompose2dScale(this.baseTransform),U=[L[0]*F[0],L[1]*F[1]],N=this.getSizeAndScale(E,this.ctx.canvas.width,U[0]),D=this.getSizeAndScale(R,this.ctx.canvas.height,U[1]),W=I.cachedCanvases.getCanvas("pattern",N.size,D.size,!0),Z=W.context,Q=k.createCanvasGraphics(Z);Q.groupLevel=I.groupLevel,this.setFillAndStrokeStyleToContext(Q,T,M);let Y=O,J=H,ee=j,re=q;return O<0&&(Y=0,ee+=Math.abs(O)),H<0&&(J=0,re+=Math.abs(H)),Z.translate(-(N.scale*Y),-(D.scale*J)),Q.transform(N.scale,0,0,D.scale,0,0),Z.save(),this.clipBbox(Q,Y,J,ee,re),Q.baseTransform=(0,d.getCurrentTransform)(Q.ctx),Q.executeOperatorList($),Q.endDrawing(),{canvas:W.canvas,scaleX:N.scale,scaleY:D.scale,offsetX:Y,offsetY:J}}getSizeAndScale(I,$,P){I=Math.abs(I);const E=Math.max(w.MAX_PATTERN_SIZE,$);let R=Math.ceil(I*P);return R>=E?R=E:P=R/I,{scale:P,size:R}}clipBbox(I,$,P,E,R){const T=E-$,B=R-P;I.ctx.rect($,P,T,B),I.current.updateRectMinMax((0,d.getCurrentTransform)(I.ctx),[$,P,E,R]),I.clip(),I.endPath()}setFillAndStrokeStyleToContext(I,$,P){const E=I.ctx,R=I.current;switch($){case C.COLORED:const T=this.ctx;E.fillStyle=T.fillStyle,E.strokeStyle=T.strokeStyle,R.fillColor=T.fillStyle,R.strokeColor=T.strokeStyle;break;case C.UNCOLORED:const B=u.Util.makeHexColor(P[0],P[1],P[2]);E.fillStyle=B,E.strokeStyle=B,R.fillColor=B,R.strokeColor=B;break;default:throw new u.FormatError(`Unsupported paint type: ${$}`)}}getPattern(I,$,P,E){let R=P;E!==p.SHADING&&(R=u.Util.transform(R,$.baseTransform),this.matrix&&(R=u.Util.transform(R,this.matrix)));const T=this.createPatternCanvas($);let B=new DOMMatrix(R);B=B.translate(T.offsetX,T.offsetY),B=B.scale(1/T.scaleX,1/T.scaleY);const M=I.createPattern(T.canvas,"repeat");return M.setTransform(B),M}};yr(w,"MAX_PATTERN_SIZE",3e3);let S=w;s.TilingPattern=S},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.convertBlackAndWhiteToRGBA=p,s.convertToRGBA=d,s.grayToRGBA=A;var u=c(1);function d(b){switch(b.kind){case u.ImageKind.GRAYSCALE_1BPP:return p(b);case u.ImageKind.RGB_24BPP:return v(b)}return null}function p({src:b,srcPos:g=0,dest:x,width:y,height:f,nonBlackColor:m=4294967295,inverseDecode:C=!1}){const S=u.FeatureTest.isLittleEndian?4278190080:255,[w,_]=C?[m,S]:[S,m],I=y>>3,$=y&7,P=b.length;x=new Uint32Array(x.buffer);let E=0;for(let R=0;R<f;R++){for(const B=g+I;g<B;g++){const M=g<P?b[g]:255;x[E++]=M&128?_:w,x[E++]=M&64?_:w,x[E++]=M&32?_:w,x[E++]=M&16?_:w,x[E++]=M&8?_:w,x[E++]=M&4?_:w,x[E++]=M&2?_:w,x[E++]=M&1?_:w}if($===0)continue;const T=g<P?b[g++]:255;for(let B=0;B<$;B++)x[E++]=T&1<<7-B?_:w}return{srcPos:g,destPos:E}}function v({src:b,srcPos:g=0,dest:x,destPos:y=0,width:f,height:m}){let C=0;const S=b.length>>2,w=new Uint32Array(b.buffer,g,S);if(u.FeatureTest.isLittleEndian){for(;C<S-2;C+=3,y+=4){const _=w[C],I=w[C+1],$=w[C+2];x[y]=_|4278190080,x[y+1]=_>>>24|I<<8|4278190080,x[y+2]=I>>>16|$<<16|4278190080,x[y+3]=$>>>8|4278190080}for(let _=C*4,I=b.length;_<I;_+=3)x[y++]=b[_]|b[_+1]<<8|b[_+2]<<16|4278190080}else{for(;C<S-2;C+=3,y+=4){const _=w[C],I=w[C+1],$=w[C+2];x[y]=_|255,x[y+1]=_<<24|I>>>8|255,x[y+2]=I<<16|$>>>16|255,x[y+3]=$<<8|255}for(let _=C*4,I=b.length;_<I;_+=3)x[y++]=b[_]<<24|b[_+1]<<16|b[_+2]<<8|255}return{srcPos:g,destPos:y}}function A(b,g){if(u.FeatureTest.isLittleEndian)for(let x=0,y=b.length;x<y;x++)g[x]=b[x]*65793|4278190080;else for(let x=0,y=b.length;x<y;x++)g[x]=b[x]*16843008|255}},(a,s)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.GlobalWorkerOptions=void 0;const c=Object.create(null);s.GlobalWorkerOptions=c,c.workerPort=null,c.workerSrc=""},(a,s,c)=>{var b,Ou,Du,bo;Object.defineProperty(s,"__esModule",{value:!0}),s.MessageHandler=void 0;var u=c(1);const d={DATA:1,ERROR:2},p={CANCEL:1,CANCEL_COMPLETE:2,CLOSE:3,ENQUEUE:4,ERROR:5,PULL:6,PULL_COMPLETE:7,START_COMPLETE:8};function v(f){switch(f instanceof Error||typeof f=="object"&&f!==null||(0,u.unreachable)('wrapReason: Expected "reason" to be a (possibly cloned) Error.'),f.name){case"AbortException":return new u.AbortException(f.message);case"MissingPDFException":return new u.MissingPDFException(f.message);case"PasswordException":return new u.PasswordException(f.message,f.code);case"UnexpectedResponseException":return new u.UnexpectedResponseException(f.message,f.status);case"UnknownErrorException":return new u.UnknownErrorException(f.message,f.details);default:return new u.UnknownErrorException(f.message,f.toString())}}class A{constructor(m,C,S){bt(this,b);this.sourceName=m,this.targetName=C,this.comObj=S,this.callbackId=1,this.streamId=1,this.streamSinks=Object.create(null),this.streamControllers=Object.create(null),this.callbackCapabilities=Object.create(null),this.actionHandler=Object.create(null),this._onComObjOnMessage=w=>{const _=w.data;if(_.targetName!==this.sourceName)return;if(_.stream){it(this,b,Du).call(this,_);return}if(_.callback){const $=_.callbackId,P=this.callbackCapabilities[$];if(!P)throw new Error(`Cannot resolve callback ${$}`);if(delete this.callbackCapabilities[$],_.callback===d.DATA)P.resolve(_.data);else if(_.callback===d.ERROR)P.reject(v(_.reason));else throw new Error("Unexpected callback case");return}const I=this.actionHandler[_.action];if(!I)throw new Error(`Unknown action from worker: ${_.action}`);if(_.callbackId){const $=this.sourceName,P=_.sourceName;new Promise(function(E){E(I(_.data))}).then(function(E){S.postMessage({sourceName:$,targetName:P,callback:d.DATA,callbackId:_.callbackId,data:E})},function(E){S.postMessage({sourceName:$,targetName:P,callback:d.ERROR,callbackId:_.callbackId,reason:v(E)})});return}if(_.streamId){it(this,b,Ou).call(this,_);return}I(_.data)},S.addEventListener("message",this._onComObjOnMessage)}on(m,C){const S=this.actionHandler;if(S[m])throw new Error(`There is already an actionName called "${m}"`);S[m]=C}send(m,C,S){this.comObj.postMessage({sourceName:this.sourceName,targetName:this.targetName,action:m,data:C},S)}sendWithPromise(m,C,S){const w=this.callbackId++,_=new u.PromiseCapability;this.callbackCapabilities[w]=_;try{this.comObj.postMessage({sourceName:this.sourceName,targetName:this.targetName,action:m,callbackId:w,data:C},S)}catch(I){_.reject(I)}return _.promise}sendWithStream(m,C,S,w){const _=this.streamId++,I=this.sourceName,$=this.targetName,P=this.comObj;return new ReadableStream({start:E=>{const R=new u.PromiseCapability;return this.streamControllers[_]={controller:E,startCall:R,pullCall:null,cancelCall:null,isClosed:!1},P.postMessage({sourceName:I,targetName:$,action:m,streamId:_,data:C,desiredSize:E.desiredSize},w),R.promise},pull:E=>{const R=new u.PromiseCapability;return this.streamControllers[_].pullCall=R,P.postMessage({sourceName:I,targetName:$,stream:p.PULL,streamId:_,desiredSize:E.desiredSize}),R.promise},cancel:E=>{(0,u.assert)(E instanceof Error,"cancel must have a valid reason");const R=new u.PromiseCapability;return this.streamControllers[_].cancelCall=R,this.streamControllers[_].isClosed=!0,P.postMessage({sourceName:I,targetName:$,stream:p.CANCEL,streamId:_,reason:v(E)}),R.promise}},S)}destroy(){this.comObj.removeEventListener("message",this._onComObjOnMessage)}}b=new WeakSet,Ou=function(m){const C=m.streamId,S=this.sourceName,w=m.sourceName,_=this.comObj,I=this,$=this.actionHandler[m.action],P={enqueue(E,R=1,T){if(this.isCancelled)return;const B=this.desiredSize;this.desiredSize-=R,B>0&&this.desiredSize<=0&&(this.sinkCapability=new u.PromiseCapability,this.ready=this.sinkCapability.promise),_.postMessage({sourceName:S,targetName:w,stream:p.ENQUEUE,streamId:C,chunk:E},T)},close(){this.isCancelled||(this.isCancelled=!0,_.postMessage({sourceName:S,targetName:w,stream:p.CLOSE,streamId:C}),delete I.streamSinks[C])},error(E){(0,u.assert)(E instanceof Error,"error must have a valid reason"),!this.isCancelled&&(this.isCancelled=!0,_.postMessage({sourceName:S,targetName:w,stream:p.ERROR,streamId:C,reason:v(E)}))},sinkCapability:new u.PromiseCapability,onPull:null,onCancel:null,isCancelled:!1,desiredSize:m.desiredSize,ready:null};P.sinkCapability.resolve(),P.ready=P.sinkCapability.promise,this.streamSinks[C]=P,new Promise(function(E){E($(m.data,P))}).then(function(){_.postMessage({sourceName:S,targetName:w,stream:p.START_COMPLETE,streamId:C,success:!0})},function(E){_.postMessage({sourceName:S,targetName:w,stream:p.START_COMPLETE,streamId:C,reason:v(E)})})},Du=function(m){const C=m.streamId,S=this.sourceName,w=m.sourceName,_=this.comObj,I=this.streamControllers[C],$=this.streamSinks[C];switch(m.stream){case p.START_COMPLETE:m.success?I.startCall.resolve():I.startCall.reject(v(m.reason));break;case p.PULL_COMPLETE:m.success?I.pullCall.resolve():I.pullCall.reject(v(m.reason));break;case p.PULL:if(!$){_.postMessage({sourceName:S,targetName:w,stream:p.PULL_COMPLETE,streamId:C,success:!0});break}$.desiredSize<=0&&m.desiredSize>0&&$.sinkCapability.resolve(),$.desiredSize=m.desiredSize,new Promise(function(P){var E;P((E=$.onPull)==null?void 0:E.call($))}).then(function(){_.postMessage({sourceName:S,targetName:w,stream:p.PULL_COMPLETE,streamId:C,success:!0})},function(P){_.postMessage({sourceName:S,targetName:w,stream:p.PULL_COMPLETE,streamId:C,reason:v(P)})});break;case p.ENQUEUE:if((0,u.assert)(I,"enqueue should have stream controller"),I.isClosed)break;I.controller.enqueue(m.chunk);break;case p.CLOSE:if((0,u.assert)(I,"close should have stream controller"),I.isClosed)break;I.isClosed=!0,I.controller.close(),it(this,b,bo).call(this,I,C);break;case p.ERROR:(0,u.assert)(I,"error should have stream controller"),I.controller.error(v(m.reason)),it(this,b,bo).call(this,I,C);break;case p.CANCEL_COMPLETE:m.success?I.cancelCall.resolve():I.cancelCall.reject(v(m.reason)),it(this,b,bo).call(this,I,C);break;case p.CANCEL:if(!$)break;new Promise(function(P){var E;P((E=$.onCancel)==null?void 0:E.call($,v(m.reason)))}).then(function(){_.postMessage({sourceName:S,targetName:w,stream:p.CANCEL_COMPLETE,streamId:C,success:!0})},function(P){_.postMessage({sourceName:S,targetName:w,stream:p.CANCEL_COMPLETE,streamId:C,reason:v(P)})}),$.sinkCapability.reject(v(m.reason)),$.isCancelled=!0,delete this.streamSinks[C];break;default:throw new Error("Unexpected stream case")}},bo=async function(m,C){var S,w,_;await Promise.allSettled([(S=m.startCall)==null?void 0:S.promise,(w=m.pullCall)==null?void 0:w.promise,(_=m.cancelCall)==null?void 0:_.promise]),delete this.streamControllers[C]},s.MessageHandler=A},(a,s,c)=>{var p,v;Object.defineProperty(s,"__esModule",{value:!0}),s.Metadata=void 0;var u=c(1);class d{constructor({parsedData:b,rawData:g}){bt(this,p);bt(this,v);Ct(this,p,b),Ct(this,v,g)}getRaw(){return He(this,v)}get(b){return He(this,p).get(b)??null}getAll(){return(0,u.objectFromMap)(He(this,p))}has(b){return He(this,p).has(b)}}p=new WeakMap,v=new WeakMap,s.Metadata=d},(a,s,c)=>{var b,g,x,y,f,m,sl;Object.defineProperty(s,"__esModule",{value:!0}),s.OptionalContentConfig=void 0;var u=c(1),d=c(8);const p=Symbol("INTERNAL");class v{constructor(w,_){bt(this,b,!0);this.name=w,this.intent=_}get visible(){return He(this,b)}_setVisible(w,_){w!==p&&(0,u.unreachable)("Internal method `_setVisible` called."),Ct(this,b,_)}}b=new WeakMap;class A{constructor(w){bt(this,m);bt(this,g,null);bt(this,x,new Map);bt(this,y,null);bt(this,f,null);if(this.name=null,this.creator=null,w!==null){this.name=w.name,this.creator=w.creator,Ct(this,f,w.order);for(const _ of w.groups)He(this,x).set(_.id,new v(_.name,_.intent));if(w.baseState==="OFF")for(const _ of He(this,x).values())_._setVisible(p,!1);for(const _ of w.on)He(this,x).get(_)._setVisible(p,!0);for(const _ of w.off)He(this,x).get(_)._setVisible(p,!1);Ct(this,y,this.getHash())}}isVisible(w){if(He(this,x).size===0)return!0;if(!w)return(0,u.warn)("Optional content group not defined."),!0;if(w.type==="OCG")return He(this,x).has(w.id)?He(this,x).get(w.id).visible:((0,u.warn)(`Optional content group not found: ${w.id}`),!0);if(w.type==="OCMD"){if(w.expression)return it(this,m,sl).call(this,w.expression);if(!w.policy||w.policy==="AnyOn"){for(const _ of w.ids){if(!He(this,x).has(_))return(0,u.warn)(`Optional content group not found: ${_}`),!0;if(He(this,x).get(_).visible)return!0}return!1}else if(w.policy==="AllOn"){for(const _ of w.ids){if(!He(this,x).has(_))return(0,u.warn)(`Optional content group not found: ${_}`),!0;if(!He(this,x).get(_).visible)return!1}return!0}else if(w.policy==="AnyOff"){for(const _ of w.ids){if(!He(this,x).has(_))return(0,u.warn)(`Optional content group not found: ${_}`),!0;if(!He(this,x).get(_).visible)return!0}return!1}else if(w.policy==="AllOff"){for(const _ of w.ids){if(!He(this,x).has(_))return(0,u.warn)(`Optional content group not found: ${_}`),!0;if(He(this,x).get(_).visible)return!1}return!0}return(0,u.warn)(`Unknown optional content policy ${w.policy}.`),!0}return(0,u.warn)(`Unknown group type ${w.type}.`),!0}setVisibility(w,_=!0){if(!He(this,x).has(w)){(0,u.warn)(`Optional content group not found: ${w}`);return}He(this,x).get(w)._setVisible(p,!!_),Ct(this,g,null)}get hasInitialVisibility(){return He(this,y)===null||this.getHash()===He(this,y)}getOrder(){return He(this,x).size?He(this,f)?He(this,f).slice():[...He(this,x).keys()]:null}getGroups(){return He(this,x).size>0?(0,u.objectFromMap)(He(this,x)):null}getGroup(w){return He(this,x).get(w)||null}getHash(){if(He(this,g)!==null)return He(this,g);const w=new d.MurmurHash3_64;for(const[_,I]of He(this,x))w.update(`${_}:${I.visible}`);return Ct(this,g,w.hexdigest())}}g=new WeakMap,x=new WeakMap,y=new WeakMap,f=new WeakMap,m=new WeakSet,sl=function(w){const _=w.length;if(_<2)return!0;const I=w[0];for(let $=1;$<_;$++){const P=w[$];let E;if(Array.isArray(P))E=it(this,m,sl).call(this,P);else if(He(this,x).has(P))E=He(this,x).get(P).visible;else return(0,u.warn)(`Optional content group not found: ${P}`),!0;switch(I){case"And":if(!E)return!1;break;case"Or":if(E)return!0;break;case"Not":return!E;default:return!0}}return I==="And"},s.OptionalContentConfig=A},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.PDFDataTransportStream=void 0;var u=c(1),d=c(6);class p{constructor({length:g,initialData:x,progressiveDone:y=!1,contentDispositionFilename:f=null,disableRange:m=!1,disableStream:C=!1},S){if((0,u.assert)(S,'PDFDataTransportStream - missing required "pdfDataRangeTransport" argument.'),this._queuedChunks=[],this._progressiveDone=y,this._contentDispositionFilename=f,(x==null?void 0:x.length)>0){const w=x instanceof Uint8Array&&x.byteLength===x.buffer.byteLength?x.buffer:new Uint8Array(x).buffer;this._queuedChunks.push(w)}this._pdfDataRangeTransport=S,this._isStreamingSupported=!C,this._isRangeSupported=!m,this._contentLength=g,this._fullRequestReader=null,this._rangeReaders=[],this._pdfDataRangeTransport.addRangeListener((w,_)=>{this._onReceiveData({begin:w,chunk:_})}),this._pdfDataRangeTransport.addProgressListener((w,_)=>{this._onProgress({loaded:w,total:_})}),this._pdfDataRangeTransport.addProgressiveReadListener(w=>{this._onReceiveData({chunk:w})}),this._pdfDataRangeTransport.addProgressiveDoneListener(()=>{this._onProgressiveDone()}),this._pdfDataRangeTransport.transportReady()}_onReceiveData({begin:g,chunk:x}){const y=x instanceof Uint8Array&&x.byteLength===x.buffer.byteLength?x.buffer:new Uint8Array(x).buffer;if(g===void 0)this._fullRequestReader?this._fullRequestReader._enqueue(y):this._queuedChunks.push(y);else{const f=this._rangeReaders.some(function(m){return m._begin!==g?!1:(m._enqueue(y),!0)});(0,u.assert)(f,"_onReceiveData - no `PDFDataTransportStreamRangeReader` instance found.")}}get _progressiveDataLength(){var g;return((g=this._fullRequestReader)==null?void 0:g._loaded)??0}_onProgress(g){var x,y,f,m;g.total===void 0?(y=(x=this._rangeReaders[0])==null?void 0:x.onProgress)==null||y.call(x,{loaded:g.loaded}):(m=(f=this._fullRequestReader)==null?void 0:f.onProgress)==null||m.call(f,{loaded:g.loaded,total:g.total})}_onProgressiveDone(){var g;(g=this._fullRequestReader)==null||g.progressiveDone(),this._progressiveDone=!0}_removeRangeReader(g){const x=this._rangeReaders.indexOf(g);x>=0&&this._rangeReaders.splice(x,1)}getFullReader(){(0,u.assert)(!this._fullRequestReader,"PDFDataTransportStream.getFullReader can only be called once.");const g=this._queuedChunks;return this._queuedChunks=null,new v(this,g,this._progressiveDone,this._contentDispositionFilename)}getRangeReader(g,x){if(x<=this._progressiveDataLength)return null;const y=new A(this,g,x);return this._pdfDataRangeTransport.requestDataRange(g,x),this._rangeReaders.push(y),y}cancelAllRequests(g){var x;(x=this._fullRequestReader)==null||x.cancel(g);for(const y of this._rangeReaders.slice(0))y.cancel(g);this._pdfDataRangeTransport.abort()}}s.PDFDataTransportStream=p;class v{constructor(g,x,y=!1,f=null){this._stream=g,this._done=y||!1,this._filename=(0,d.isPdfFile)(f)?f:null,this._queuedChunks=x||[],this._loaded=0;for(const m of this._queuedChunks)this._loaded+=m.byteLength;this._requests=[],this._headersReady=Promise.resolve(),g._fullRequestReader=this,this.onProgress=null}_enqueue(g){this._done||(this._requests.length>0?this._requests.shift().resolve({value:g,done:!1}):this._queuedChunks.push(g),this._loaded+=g.byteLength)}get headersReady(){return this._headersReady}get filename(){return this._filename}get isRangeSupported(){return this._stream._isRangeSupported}get isStreamingSupported(){return this._stream._isStreamingSupported}get contentLength(){return this._stream._contentLength}async read(){if(this._queuedChunks.length>0)return{value:this._queuedChunks.shift(),done:!1};if(this._done)return{value:void 0,done:!0};const g=new u.PromiseCapability;return this._requests.push(g),g.promise}cancel(g){this._done=!0;for(const x of this._requests)x.resolve({value:void 0,done:!0});this._requests.length=0}progressiveDone(){this._done||(this._done=!0)}}class A{constructor(g,x,y){this._stream=g,this._begin=x,this._end=y,this._queuedChunk=null,this._requests=[],this._done=!1,this.onProgress=null}_enqueue(g){if(!this._done){if(this._requests.length===0)this._queuedChunk=g;else{this._requests.shift().resolve({value:g,done:!1});for(const y of this._requests)y.resolve({value:void 0,done:!0});this._requests.length=0}this._done=!0,this._stream._removeRangeReader(this)}}get isStreamingSupported(){return!1}async read(){if(this._queuedChunk){const x=this._queuedChunk;return this._queuedChunk=null,{value:x,done:!1}}if(this._done)return{value:void 0,done:!0};const g=new u.PromiseCapability;return this._requests.push(g),g.promise}cancel(g){this._done=!0;for(const x of this._requests)x.resolve({value:void 0,done:!0});this._requests.length=0,this._stream._removeRangeReader(this)}}},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.PDFFetchStream=void 0;var u=c(1),d=c(20);function p(y,f,m){return{method:"GET",headers:y,signal:m.signal,mode:"cors",credentials:f?"include":"same-origin",redirect:"follow"}}function v(y){const f=new Headers;for(const m in y){const C=y[m];C!==void 0&&f.append(m,C)}return f}function A(y){return y instanceof Uint8Array?y.buffer:y instanceof ArrayBuffer?y:((0,u.warn)(`getArrayBuffer - unexpected data format: ${y}`),new Uint8Array(y).buffer)}class b{constructor(f){this.source=f,this.isHttp=/^https?:/i.test(f.url),this.httpHeaders=this.isHttp&&f.httpHeaders||{},this._fullRequestReader=null,this._rangeRequestReaders=[]}get _progressiveDataLength(){var f;return((f=this._fullRequestReader)==null?void 0:f._loaded)??0}getFullReader(){return(0,u.assert)(!this._fullRequestReader,"PDFFetchStream.getFullReader can only be called once."),this._fullRequestReader=new g(this),this._fullRequestReader}getRangeReader(f,m){if(m<=this._progressiveDataLength)return null;const C=new x(this,f,m);return this._rangeRequestReaders.push(C),C}cancelAllRequests(f){var m;(m=this._fullRequestReader)==null||m.cancel(f);for(const C of this._rangeRequestReaders.slice(0))C.cancel(f)}}s.PDFFetchStream=b;class g{constructor(f){this._stream=f,this._reader=null,this._loaded=0,this._filename=null;const m=f.source;this._withCredentials=m.withCredentials||!1,this._contentLength=m.length,this._headersCapability=new u.PromiseCapability,this._disableRange=m.disableRange||!1,this._rangeChunkSize=m.rangeChunkSize,!this._rangeChunkSize&&!this._disableRange&&(this._disableRange=!0),this._abortController=new AbortController,this._isStreamingSupported=!m.disableStream,this._isRangeSupported=!m.disableRange,this._headers=v(this._stream.httpHeaders);const C=m.url;fetch(C,p(this._headers,this._withCredentials,this._abortController)).then(S=>{if(!(0,d.validateResponseStatus)(S.status))throw(0,d.createResponseStatusError)(S.status,C);this._reader=S.body.getReader(),this._headersCapability.resolve();const w=$=>S.headers.get($),{allowRangeRequests:_,suggestedLength:I}=(0,d.validateRangeRequestCapabilities)({getResponseHeader:w,isHttp:this._stream.isHttp,rangeChunkSize:this._rangeChunkSize,disableRange:this._disableRange});this._isRangeSupported=_,this._contentLength=I||this._contentLength,this._filename=(0,d.extractFilenameFromHeader)(w),!this._isStreamingSupported&&this._isRangeSupported&&this.cancel(new u.AbortException("Streaming is disabled."))}).catch(this._headersCapability.reject),this.onProgress=null}get headersReady(){return this._headersCapability.promise}get filename(){return this._filename}get contentLength(){return this._contentLength}get isRangeSupported(){return this._isRangeSupported}get isStreamingSupported(){return this._isStreamingSupported}async read(){var C;await this._headersCapability.promise;const{value:f,done:m}=await this._reader.read();return m?{value:f,done:m}:(this._loaded+=f.byteLength,(C=this.onProgress)==null||C.call(this,{loaded:this._loaded,total:this._contentLength}),{value:A(f),done:!1})}cancel(f){var m;(m=this._reader)==null||m.cancel(f),this._abortController.abort()}}class x{constructor(f,m,C){this._stream=f,this._reader=null,this._loaded=0;const S=f.source;this._withCredentials=S.withCredentials||!1,this._readCapability=new u.PromiseCapability,this._isStreamingSupported=!S.disableStream,this._abortController=new AbortController,this._headers=v(this._stream.httpHeaders),this._headers.append("Range",`bytes=${m}-${C-1}`);const w=S.url;fetch(w,p(this._headers,this._withCredentials,this._abortController)).then(_=>{if(!(0,d.validateResponseStatus)(_.status))throw(0,d.createResponseStatusError)(_.status,w);this._readCapability.resolve(),this._reader=_.body.getReader()}).catch(this._readCapability.reject),this.onProgress=null}get isStreamingSupported(){return this._isStreamingSupported}async read(){var C;await this._readCapability.promise;const{value:f,done:m}=await this._reader.read();return m?{value:f,done:m}:(this._loaded+=f.byteLength,(C=this.onProgress)==null||C.call(this,{loaded:this._loaded}),{value:A(f),done:!1})}cancel(f){var m;(m=this._reader)==null||m.cancel(f),this._abortController.abort()}}},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.createResponseStatusError=b,s.extractFilenameFromHeader=A,s.validateRangeRequestCapabilities=v,s.validateResponseStatus=g;var u=c(1),d=c(21),p=c(6);function v({getResponseHeader:x,isHttp:y,rangeChunkSize:f,disableRange:m}){const C={allowRangeRequests:!1,suggestedLength:void 0},S=parseInt(x("Content-Length"),10);return!Number.isInteger(S)||(C.suggestedLength=S,S<=2*f)||m||!y||x("Accept-Ranges")!=="bytes"||(x("Content-Encoding")||"identity")!=="identity"||(C.allowRangeRequests=!0),C}function A(x){const y=x("Content-Disposition");if(y){let f=(0,d.getFilenameFromContentDispositionHeader)(y);if(f.includes("%"))try{f=decodeURIComponent(f)}catch{}if((0,p.isPdfFile)(f))return f}return null}function b(x,y){return x===404||x===0&&y.startsWith("file:")?new u.MissingPDFException('Missing PDF "'+y+'".'):new u.UnexpectedResponseException(`Unexpected server response (${x}) while retrieving PDF "${y}".`,x)}function g(x){return x===200||x===206}},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.getFilenameFromContentDispositionHeader=d;var u=c(1);function d(p){let v=!0,A=b("filename\\*","i").exec(p);if(A){A=A[1];let S=f(A);return S=unescape(S),S=m(S),S=C(S),x(S)}if(A=y(p),A){const S=C(A);return x(S)}if(A=b("filename","i").exec(p),A){A=A[1];let S=f(A);return S=C(S),x(S)}function b(S,w){return new RegExp("(?:^|;)\\s*"+S+'\\s*=\\s*([^";\\s][^;\\s]*|"(?:[^"\\\\]|\\\\"?)+"?)',w)}function g(S,w){if(S){if(!/^[\x00-\xFF]+$/.test(w))return w;try{const _=new TextDecoder(S,{fatal:!0}),I=(0,u.stringToBytes)(w);w=_.decode(I),v=!1}catch{}}return w}function x(S){return v&&/[\x80-\xff]/.test(S)&&(S=g("utf-8",S),v&&(S=g("iso-8859-1",S))),S}function y(S){const w=[];let _;const I=b("filename\\*((?!0\\d)\\d+)(\\*?)","ig");for(;(_=I.exec(S))!==null;){let[,P,E,R]=_;if(P=parseInt(P,10),P in w){if(P===0)break;continue}w[P]=[E,R]}const $=[];for(let P=0;P<w.length&&P in w;++P){let[E,R]=w[P];R=f(R),E&&(R=unescape(R),P===0&&(R=m(R))),$.push(R)}return $.join("")}function f(S){if(S.startsWith('"')){const w=S.slice(1).split('\\"');for(let _=0;_<w.length;++_){const I=w[_].indexOf('"');I!==-1&&(w[_]=w[_].slice(0,I),w.length=_+1),w[_]=w[_].replaceAll(/\\(.)/g,"$1")}S=w.join('"')}return S}function m(S){const w=S.indexOf("'");if(w===-1)return S;const _=S.slice(0,w),$=S.slice(w+1).replace(/^[^']*'/,"");return g(_,$)}function C(S){return!S.startsWith("=?")||/[\x00-\x19\x80-\xff]/.test(S)?S:S.replaceAll(/=\?([\w-]*)\?([QqBb])\?((?:[^?]|\?(?!=))*)\?=/g,function(w,_,I,$){if(I==="q"||I==="Q")return $=$.replaceAll("_"," "),$=$.replaceAll(/=([0-9a-fA-F]{2})/g,function(P,E){return String.fromCharCode(parseInt(E,16))}),g(_,$);try{$=atob($)}catch{}return g(_,$)})}return""}},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.PDFNetworkStream=void 0;var u=c(1),d=c(20);const p=200,v=206;function A(f){const m=f.response;return typeof m!="string"?m:(0,u.stringToBytes)(m).buffer}class b{constructor(m,C={}){this.url=m,this.isHttp=/^https?:/i.test(m),this.httpHeaders=this.isHttp&&C.httpHeaders||Object.create(null),this.withCredentials=C.withCredentials||!1,this.currXhrId=0,this.pendingRequests=Object.create(null)}requestRange(m,C,S){const w={begin:m,end:C};for(const _ in S)w[_]=S[_];return this.request(w)}requestFull(m){return this.request(m)}request(m){const C=new XMLHttpRequest,S=this.currXhrId++,w=this.pendingRequests[S]={xhr:C};C.open("GET",this.url),C.withCredentials=this.withCredentials;for(const _ in this.httpHeaders){const I=this.httpHeaders[_];I!==void 0&&C.setRequestHeader(_,I)}return this.isHttp&&"begin"in m&&"end"in m?(C.setRequestHeader("Range",`bytes=${m.begin}-${m.end-1}`),w.expectedStatus=v):w.expectedStatus=p,C.responseType="arraybuffer",m.onError&&(C.onerror=function(_){m.onError(C.status)}),C.onreadystatechange=this.onStateChange.bind(this,S),C.onprogress=this.onProgress.bind(this,S),w.onHeadersReceived=m.onHeadersReceived,w.onDone=m.onDone,w.onError=m.onError,w.onProgress=m.onProgress,C.send(null),S}onProgress(m,C){var w;const S=this.pendingRequests[m];S&&((w=S.onProgress)==null||w.call(S,C))}onStateChange(m,C){var P,E,R;const S=this.pendingRequests[m];if(!S)return;const w=S.xhr;if(w.readyState>=2&&S.onHeadersReceived&&(S.onHeadersReceived(),delete S.onHeadersReceived),w.readyState!==4||!(m in this.pendingRequests))return;if(delete this.pendingRequests[m],w.status===0&&this.isHttp){(P=S.onError)==null||P.call(S,w.status);return}const _=w.status||p;if(!(_===p&&S.expectedStatus===v)&&_!==S.expectedStatus){(E=S.onError)==null||E.call(S,w.status);return}const $=A(w);if(_===v){const T=w.getResponseHeader("Content-Range"),B=/bytes (\d+)-(\d+)\/(\d+)/.exec(T);S.onDone({begin:parseInt(B[1],10),chunk:$})}else $?S.onDone({begin:0,chunk:$}):(R=S.onError)==null||R.call(S,w.status)}getRequestXhr(m){return this.pendingRequests[m].xhr}isPendingRequest(m){return m in this.pendingRequests}abortRequest(m){const C=this.pendingRequests[m].xhr;delete this.pendingRequests[m],C.abort()}}class g{constructor(m){this._source=m,this._manager=new b(m.url,{httpHeaders:m.httpHeaders,withCredentials:m.withCredentials}),this._rangeChunkSize=m.rangeChunkSize,this._fullRequestReader=null,this._rangeRequestReaders=[]}_onRangeRequestReaderClosed(m){const C=this._rangeRequestReaders.indexOf(m);C>=0&&this._rangeRequestReaders.splice(C,1)}getFullReader(){return(0,u.assert)(!this._fullRequestReader,"PDFNetworkStream.getFullReader can only be called once."),this._fullRequestReader=new x(this._manager,this._source),this._fullRequestReader}getRangeReader(m,C){const S=new y(this._manager,m,C);return S.onClosed=this._onRangeRequestReaderClosed.bind(this),this._rangeRequestReaders.push(S),S}cancelAllRequests(m){var C;(C=this._fullRequestReader)==null||C.cancel(m);for(const S of this._rangeRequestReaders.slice(0))S.cancel(m)}}s.PDFNetworkStream=g;class x{constructor(m,C){this._manager=m;const S={onHeadersReceived:this._onHeadersReceived.bind(this),onDone:this._onDone.bind(this),onError:this._onError.bind(this),onProgress:this._onProgress.bind(this)};this._url=C.url,this._fullRequestId=m.requestFull(S),this._headersReceivedCapability=new u.PromiseCapability,this._disableRange=C.disableRange||!1,this._contentLength=C.length,this._rangeChunkSize=C.rangeChunkSize,!this._rangeChunkSize&&!this._disableRange&&(this._disableRange=!0),this._isStreamingSupported=!1,this._isRangeSupported=!1,this._cachedChunks=[],this._requests=[],this._done=!1,this._storedError=void 0,this._filename=null,this.onProgress=null}_onHeadersReceived(){const m=this._fullRequestId,C=this._manager.getRequestXhr(m),S=I=>C.getResponseHeader(I),{allowRangeRequests:w,suggestedLength:_}=(0,d.validateRangeRequestCapabilities)({getResponseHeader:S,isHttp:this._manager.isHttp,rangeChunkSize:this._rangeChunkSize,disableRange:this._disableRange});w&&(this._isRangeSupported=!0),this._contentLength=_||this._contentLength,this._filename=(0,d.extractFilenameFromHeader)(S),this._isRangeSupported&&this._manager.abortRequest(m),this._headersReceivedCapability.resolve()}_onDone(m){if(m&&(this._requests.length>0?this._requests.shift().resolve({value:m.chunk,done:!1}):this._cachedChunks.push(m.chunk)),this._done=!0,!(this._cachedChunks.length>0)){for(const C of this._requests)C.resolve({value:void 0,done:!0});this._requests.length=0}}_onError(m){this._storedError=(0,d.createResponseStatusError)(m,this._url),this._headersReceivedCapability.reject(this._storedError);for(const C of this._requests)C.reject(this._storedError);this._requests.length=0,this._cachedChunks.length=0}_onProgress(m){var C;(C=this.onProgress)==null||C.call(this,{loaded:m.loaded,total:m.lengthComputable?m.total:this._contentLength})}get filename(){return this._filename}get isRangeSupported(){return this._isRangeSupported}get isStreamingSupported(){return this._isStreamingSupported}get contentLength(){return this._contentLength}get headersReady(){return this._headersReceivedCapability.promise}async read(){if(this._storedError)throw this._storedError;if(this._cachedChunks.length>0)return{value:this._cachedChunks.shift(),done:!1};if(this._done)return{value:void 0,done:!0};const m=new u.PromiseCapability;return this._requests.push(m),m.promise}cancel(m){this._done=!0,this._headersReceivedCapability.reject(m);for(const C of this._requests)C.resolve({value:void 0,done:!0});this._requests.length=0,this._manager.isPendingRequest(this._fullRequestId)&&this._manager.abortRequest(this._fullRequestId),this._fullRequestReader=null}}class y{constructor(m,C,S){this._manager=m;const w={onDone:this._onDone.bind(this),onError:this._onError.bind(this),onProgress:this._onProgress.bind(this)};this._url=m.url,this._requestId=m.requestRange(C,S,w),this._requests=[],this._queuedChunk=null,this._done=!1,this._storedError=void 0,this.onProgress=null,this.onClosed=null}_close(){var m;(m=this.onClosed)==null||m.call(this,this)}_onDone(m){const C=m.chunk;this._requests.length>0?this._requests.shift().resolve({value:C,done:!1}):this._queuedChunk=C,this._done=!0;for(const S of this._requests)S.resolve({value:void 0,done:!0});this._requests.length=0,this._close()}_onError(m){this._storedError=(0,d.createResponseStatusError)(m,this._url);for(const C of this._requests)C.reject(this._storedError);this._requests.length=0,this._queuedChunk=null}_onProgress(m){var C;this.isStreamingSupported||(C=this.onProgress)==null||C.call(this,{loaded:m.loaded})}get isStreamingSupported(){return!1}async read(){if(this._storedError)throw this._storedError;if(this._queuedChunk!==null){const C=this._queuedChunk;return this._queuedChunk=null,{value:C,done:!1}}if(this._done)return{value:void 0,done:!0};const m=new u.PromiseCapability;return this._requests.push(m),m.promise}cancel(m){this._done=!0;for(const C of this._requests)C.resolve({value:void 0,done:!0});this._requests.length=0,this._manager.isPendingRequest(this._requestId)&&this._manager.abortRequest(this._requestId),this._close()}}},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.PDFNodeStream=void 0;var u=c(1),d=c(20);const p=/^file:\/\/\/[a-zA-Z]:\//;function v(S){const w=require$$5,_=w.parse(S);return _.protocol==="file:"||_.host?_:/^[a-z]:[/\\]/i.test(S)?w.parse(`file:///${S}`):(_.host||(_.protocol="file:"),_)}class A{constructor(w){this.source=w,this.url=v(w.url),this.isHttp=this.url.protocol==="http:"||this.url.protocol==="https:",this.isFsUrl=this.url.protocol==="file:",this.httpHeaders=this.isHttp&&w.httpHeaders||{},this._fullRequestReader=null,this._rangeRequestReaders=[]}get _progressiveDataLength(){var w;return((w=this._fullRequestReader)==null?void 0:w._loaded)??0}getFullReader(){return(0,u.assert)(!this._fullRequestReader,"PDFNodeStream.getFullReader can only be called once."),this._fullRequestReader=this.isFsUrl?new m(this):new y(this),this._fullRequestReader}getRangeReader(w,_){if(_<=this._progressiveDataLength)return null;const I=this.isFsUrl?new C(this,w,_):new f(this,w,_);return this._rangeRequestReaders.push(I),I}cancelAllRequests(w){var _;(_=this._fullRequestReader)==null||_.cancel(w);for(const I of this._rangeRequestReaders.slice(0))I.cancel(w)}}s.PDFNodeStream=A;class b{constructor(w){this._url=w.url,this._done=!1,this._storedError=null,this.onProgress=null;const _=w.source;this._contentLength=_.length,this._loaded=0,this._filename=null,this._disableRange=_.disableRange||!1,this._rangeChunkSize=_.rangeChunkSize,!this._rangeChunkSize&&!this._disableRange&&(this._disableRange=!0),this._isStreamingSupported=!_.disableStream,this._isRangeSupported=!_.disableRange,this._readableStream=null,this._readCapability=new u.PromiseCapability,this._headersCapability=new u.PromiseCapability}get headersReady(){return this._headersCapability.promise}get filename(){return this._filename}get contentLength(){return this._contentLength}get isRangeSupported(){return this._isRangeSupported}get isStreamingSupported(){return this._isStreamingSupported}async read(){var I;if(await this._readCapability.promise,this._done)return{value:void 0,done:!0};if(this._storedError)throw this._storedError;const w=this._readableStream.read();return w===null?(this._readCapability=new u.PromiseCapability,this.read()):(this._loaded+=w.length,(I=this.onProgress)==null||I.call(this,{loaded:this._loaded,total:this._contentLength}),{value:new Uint8Array(w).buffer,done:!1})}cancel(w){if(!this._readableStream){this._error(w);return}this._readableStream.destroy(w)}_error(w){this._storedError=w,this._readCapability.resolve()}_setReadableStream(w){this._readableStream=w,w.on("readable",()=>{this._readCapability.resolve()}),w.on("end",()=>{w.destroy(),this._done=!0,this._readCapability.resolve()}),w.on("error",_=>{this._error(_)}),!this._isStreamingSupported&&this._isRangeSupported&&this._error(new u.AbortException("streaming is disabled")),this._storedError&&this._readableStream.destroy(this._storedError)}}class g{constructor(w){this._url=w.url,this._done=!1,this._storedError=null,this.onProgress=null,this._loaded=0,this._readableStream=null,this._readCapability=new u.PromiseCapability;const _=w.source;this._isStreamingSupported=!_.disableStream}get isStreamingSupported(){return this._isStreamingSupported}async read(){var I;if(await this._readCapability.promise,this._done)return{value:void 0,done:!0};if(this._storedError)throw this._storedError;const w=this._readableStream.read();return w===null?(this._readCapability=new u.PromiseCapability,this.read()):(this._loaded+=w.length,(I=this.onProgress)==null||I.call(this,{loaded:this._loaded}),{value:new Uint8Array(w).buffer,done:!1})}cancel(w){if(!this._readableStream){this._error(w);return}this._readableStream.destroy(w)}_error(w){this._storedError=w,this._readCapability.resolve()}_setReadableStream(w){this._readableStream=w,w.on("readable",()=>{this._readCapability.resolve()}),w.on("end",()=>{w.destroy(),this._done=!0,this._readCapability.resolve()}),w.on("error",_=>{this._error(_)}),this._storedError&&this._readableStream.destroy(this._storedError)}}function x(S,w){return{protocol:S.protocol,auth:S.auth,host:S.hostname,port:S.port,path:S.path,method:"GET",headers:w}}class y extends b{constructor(w){super(w);const _=I=>{if(I.statusCode===404){const R=new u.MissingPDFException(`Missing PDF "${this._url}".`);this._storedError=R,this._headersCapability.reject(R);return}this._headersCapability.resolve(),this._setReadableStream(I);const $=R=>this._readableStream.headers[R.toLowerCase()],{allowRangeRequests:P,suggestedLength:E}=(0,d.validateRangeRequestCapabilities)({getResponseHeader:$,isHttp:w.isHttp,rangeChunkSize:this._rangeChunkSize,disableRange:this._disableRange});this._isRangeSupported=P,this._contentLength=E||this._contentLength,this._filename=(0,d.extractFilenameFromHeader)($)};if(this._request=null,this._url.protocol==="http:"){const I=require$$5;this._request=I.request(x(this._url,w.httpHeaders),_)}else{const I=require$$5;this._request=I.request(x(this._url,w.httpHeaders),_)}this._request.on("error",I=>{this._storedError=I,this._headersCapability.reject(I)}),this._request.end()}}class f extends g{constructor(w,_,I){super(w),this._httpHeaders={};for(const P in w.httpHeaders){const E=w.httpHeaders[P];E!==void 0&&(this._httpHeaders[P]=E)}this._httpHeaders.Range=`bytes=${_}-${I-1}`;const $=P=>{if(P.statusCode===404){const E=new u.MissingPDFException(`Missing PDF "${this._url}".`);this._storedError=E;return}this._setReadableStream(P)};if(this._request=null,this._url.protocol==="http:"){const P=require$$5;this._request=P.request(x(this._url,this._httpHeaders),$)}else{const P=require$$5;this._request=P.request(x(this._url,this._httpHeaders),$)}this._request.on("error",P=>{this._storedError=P}),this._request.end()}}class m extends b{constructor(w){super(w);let _=decodeURIComponent(this._url.path);p.test(this._url.href)&&(_=_.replace(/^\//,""));const I=require$$5;I.lstat(_,($,P)=>{if($){$.code==="ENOENT"&&($=new u.MissingPDFException(`Missing PDF "${_}".`)),this._storedError=$,this._headersCapability.reject($);return}this._contentLength=P.size,this._setReadableStream(I.createReadStream(_)),this._headersCapability.resolve()})}}class C extends g{constructor(w,_,I){super(w);let $=decodeURIComponent(this._url.path);p.test(this._url.href)&&($=$.replace(/^\//,""));const P=require$$5;this._setReadableStream(P.createReadStream($,{start:_,end:I-1}))}}},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.SVGGraphics=void 0;var u=c(6),d=c(1);const p={fontStyle:"normal",fontWeight:"normal",fillColor:"#000000"},v="http://www.w3.org/XML/1998/namespace",A="http://www.w3.org/1999/xlink",b=["butt","round","square"],g=["miter","round","bevel"],x=function(P,E="",R=!1){if(URL.createObjectURL&&typeof Blob<"u"&&!R)return URL.createObjectURL(new Blob([P],{type:E}));const T="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";let B=`data:${E};base64,`;for(let M=0,k=P.length;M<k;M+=3){const O=P[M]&255,H=P[M+1]&255,j=P[M+2]&255,q=O>>2,L=(O&3)<<4|H>>4,F=M+1<k?(H&15)<<2|j>>6:64,U=M+2<k?j&63:64;B+=T[q]+T[L]+T[F]+T[U]}return B},y=function(){const P=new Uint8Array([137,80,78,71,13,10,26,10]),E=12,R=new Int32Array(256);for(let j=0;j<256;j++){let q=j;for(let L=0;L<8;L++)q=q&1?3988292384^q>>1&2147483647:q>>1&2147483647;R[j]=q}function T(j,q,L){let F=-1;for(let U=q;U<L;U++){const N=(F^j[U])&255,D=R[N];F=F>>>8^D}return F^-1}function B(j,q,L,F){let U=F;const N=q.length;L[U]=N>>24&255,L[U+1]=N>>16&255,L[U+2]=N>>8&255,L[U+3]=N&255,U+=4,L[U]=j.charCodeAt(0)&255,L[U+1]=j.charCodeAt(1)&255,L[U+2]=j.charCodeAt(2)&255,L[U+3]=j.charCodeAt(3)&255,U+=4,L.set(q,U),U+=q.length;const D=T(L,F+4,U);L[U]=D>>24&255,L[U+1]=D>>16&255,L[U+2]=D>>8&255,L[U+3]=D&255}function M(j,q,L){let F=1,U=0;for(let N=q;N<L;++N)F=(F+(j[N]&255))%65521,U=(U+F)%65521;return U<<16|F}function k(j){if(!d.isNodeJS)return O(j);try{const q=parseInt(process.versions.node)>=8?j:Buffer.from(j),L=require$$5.deflateSync(q,{level:9});return L instanceof Uint8Array?L:new Uint8Array(L)}catch(q){(0,d.warn)("Not compressing PNG because zlib.deflateSync is unavailable: "+q)}return O(j)}function O(j){let q=j.length;const L=65535,F=Math.ceil(q/L),U=new Uint8Array(2+q+F*5+4);let N=0;U[N++]=120,U[N++]=156;let D=0;for(;q>L;)U[N++]=0,U[N++]=255,U[N++]=255,U[N++]=0,U[N++]=0,U.set(j.subarray(D,D+L),N),N+=L,D+=L,q-=L;U[N++]=1,U[N++]=q&255,U[N++]=q>>8&255,U[N++]=~q&65535&255,U[N++]=(~q&65535)>>8&255,U.set(j.subarray(D),N),N+=j.length-D;const W=M(j,0,j.length);return U[N++]=W>>24&255,U[N++]=W>>16&255,U[N++]=W>>8&255,U[N++]=W&255,U}function H(j,q,L,F){const U=j.width,N=j.height;let D,W,Z;const Q=j.data;switch(q){case d.ImageKind.GRAYSCALE_1BPP:W=0,D=1,Z=U+7>>3;break;case d.ImageKind.RGB_24BPP:W=2,D=8,Z=U*3;break;case d.ImageKind.RGBA_32BPP:W=6,D=8,Z=U*4;break;default:throw new Error("invalid format")}const Y=new Uint8Array((1+Z)*N);let J=0,ee=0;for(let ie=0;ie<N;++ie)Y[J++]=0,Y.set(Q.subarray(ee,ee+Z),J),ee+=Z,J+=Z;if(q===d.ImageKind.GRAYSCALE_1BPP&&F){J=0;for(let ie=0;ie<N;ie++){J++;for(let ce=0;ce<Z;ce++)Y[J++]^=255}}const re=new Uint8Array([U>>24&255,U>>16&255,U>>8&255,U&255,N>>24&255,N>>16&255,N>>8&255,N&255,D,W,0,0,0]),ae=k(Y),V=P.length+E*3+re.length+ae.length,K=new Uint8Array(V);let te=0;return K.set(P,te),te+=P.length,B("IHDR",re,K,te),te+=E+re.length,B("IDATA",ae,K,te),te+=E+ae.length,B("IEND",new Uint8Array(0),K,te),x(K,"image/png",L)}return function(q,L,F){const U=q.kind===void 0?d.ImageKind.GRAYSCALE_1BPP:q.kind;return H(q,U,L,F)}}();class f{constructor(){this.fontSizeScale=1,this.fontWeight=p.fontWeight,this.fontSize=0,this.textMatrix=d.IDENTITY_MATRIX,this.fontMatrix=d.FONT_IDENTITY_MATRIX,this.leading=0,this.textRenderingMode=d.TextRenderingMode.FILL,this.textMatrixScale=1,this.x=0,this.y=0,this.lineX=0,this.lineY=0,this.charSpacing=0,this.wordSpacing=0,this.textHScale=1,this.textRise=0,this.fillColor=p.fillColor,this.strokeColor="#000000",this.fillAlpha=1,this.strokeAlpha=1,this.lineWidth=1,this.lineJoin="",this.lineCap="",this.miterLimit=0,this.dashArray=[],this.dashPhase=0,this.dependencies=[],this.activeClipUrl=null,this.clipGroup=null,this.maskId=""}clone(){return Object.create(this)}setCurrentPoint(E,R){this.x=E,this.y=R}}function m(P){let E=[];const R=[];for(const T of P){if(T.fn==="save"){E.push({fnId:92,fn:"group",items:[]}),R.push(E),E=E.at(-1).items;continue}T.fn==="restore"?E=R.pop():E.push(T)}return E}function C(P){if(Number.isInteger(P))return P.toString();const E=P.toFixed(10);let R=E.length-1;if(E[R]!=="0")return E;do R--;while(E[R]==="0");return E.substring(0,E[R]==="."?R:R+1)}function S(P){if(P[4]===0&&P[5]===0){if(P[1]===0&&P[2]===0)return P[0]===1&&P[3]===1?"":`scale(${C(P[0])} ${C(P[3])})`;if(P[0]===P[3]&&P[1]===-P[2]){const E=Math.acos(P[0])*180/Math.PI;return`rotate(${C(E)})`}}else if(P[0]===1&&P[1]===0&&P[2]===0&&P[3]===1)return`translate(${C(P[4])} ${C(P[5])})`;return`matrix(${C(P[0])} ${C(P[1])} ${C(P[2])} ${C(P[3])} ${C(P[4])} ${C(P[5])})`}let w=0,_=0,I=0;class ${constructor(E,R,T=!1){(0,u.deprecated)("The SVG back-end is no longer maintained and *may* be removed in the future."),this.svgFactory=new u.DOMSVGFactory,this.current=new f,this.transformMatrix=d.IDENTITY_MATRIX,this.transformStack=[],this.extraStack=[],this.commonObjs=E,this.objs=R,this.pendingClip=null,this.pendingEOFill=!1,this.embedFonts=!1,this.embeddedFonts=Object.create(null),this.cssStyle=null,this.forceDataSchema=!!T,this._operatorIdMapping=[];for(const B in d.OPS)this._operatorIdMapping[d.OPS[B]]=B}getObject(E,R=null){return typeof E=="string"?E.startsWith("g_")?this.commonObjs.get(E):this.objs.get(E):R}save(){this.transformStack.push(this.transformMatrix);const E=this.current;this.extraStack.push(E),this.current=E.clone()}restore(){this.transformMatrix=this.transformStack.pop(),this.current=this.extraStack.pop(),this.pendingClip=null,this.tgrp=null}group(E){this.save(),this.executeOpTree(E),this.restore()}loadDependencies(E){const R=E.fnArray,T=E.argsArray;for(let B=0,M=R.length;B<M;B++)if(R[B]===d.OPS.dependency)for(const k of T[B]){const O=k.startsWith("g_")?this.commonObjs:this.objs,H=new Promise(j=>{O.get(k,j)});this.current.dependencies.push(H)}return Promise.all(this.current.dependencies)}transform(E,R,T,B,M,k){const O=[E,R,T,B,M,k];this.transformMatrix=d.Util.transform(this.transformMatrix,O),this.tgrp=null}getSVG(E,R){this.viewport=R;const T=this._initialize(R);return this.loadDependencies(E).then(()=>(this.transformMatrix=d.IDENTITY_MATRIX,this.executeOpTree(this.convertOpList(E)),T))}convertOpList(E){const R=this._operatorIdMapping,T=E.argsArray,B=E.fnArray,M=[];for(let k=0,O=B.length;k<O;k++){const H=B[k];M.push({fnId:H,fn:R[H],args:T[k]})}return m(M)}executeOpTree(E){for(const R of E){const T=R.fn,B=R.fnId,M=R.args;switch(B|0){case d.OPS.beginText:this.beginText();break;case d.OPS.dependency:break;case d.OPS.setLeading:this.setLeading(M);break;case d.OPS.setLeadingMoveText:this.setLeadingMoveText(M[0],M[1]);break;case d.OPS.setFont:this.setFont(M);break;case d.OPS.showText:this.showText(M[0]);break;case d.OPS.showSpacedText:this.showText(M[0]);break;case d.OPS.endText:this.endText();break;case d.OPS.moveText:this.moveText(M[0],M[1]);break;case d.OPS.setCharSpacing:this.setCharSpacing(M[0]);break;case d.OPS.setWordSpacing:this.setWordSpacing(M[0]);break;case d.OPS.setHScale:this.setHScale(M[0]);break;case d.OPS.setTextMatrix:this.setTextMatrix(M[0],M[1],M[2],M[3],M[4],M[5]);break;case d.OPS.setTextRise:this.setTextRise(M[0]);break;case d.OPS.setTextRenderingMode:this.setTextRenderingMode(M[0]);break;case d.OPS.setLineWidth:this.setLineWidth(M[0]);break;case d.OPS.setLineJoin:this.setLineJoin(M[0]);break;case d.OPS.setLineCap:this.setLineCap(M[0]);break;case d.OPS.setMiterLimit:this.setMiterLimit(M[0]);break;case d.OPS.setFillRGBColor:this.setFillRGBColor(M[0],M[1],M[2]);break;case d.OPS.setStrokeRGBColor:this.setStrokeRGBColor(M[0],M[1],M[2]);break;case d.OPS.setStrokeColorN:this.setStrokeColorN(M);break;case d.OPS.setFillColorN:this.setFillColorN(M);break;case d.OPS.shadingFill:this.shadingFill(M[0]);break;case d.OPS.setDash:this.setDash(M[0],M[1]);break;case d.OPS.setRenderingIntent:this.setRenderingIntent(M[0]);break;case d.OPS.setFlatness:this.setFlatness(M[0]);break;case d.OPS.setGState:this.setGState(M[0]);break;case d.OPS.fill:this.fill();break;case d.OPS.eoFill:this.eoFill();break;case d.OPS.stroke:this.stroke();break;case d.OPS.fillStroke:this.fillStroke();break;case d.OPS.eoFillStroke:this.eoFillStroke();break;case d.OPS.clip:this.clip("nonzero");break;case d.OPS.eoClip:this.clip("evenodd");break;case d.OPS.paintSolidColorImageMask:this.paintSolidColorImageMask();break;case d.OPS.paintImageXObject:this.paintImageXObject(M[0]);break;case d.OPS.paintInlineImageXObject:this.paintInlineImageXObject(M[0]);break;case d.OPS.paintImageMaskXObject:this.paintImageMaskXObject(M[0]);break;case d.OPS.paintFormXObjectBegin:this.paintFormXObjectBegin(M[0],M[1]);break;case d.OPS.paintFormXObjectEnd:this.paintFormXObjectEnd();break;case d.OPS.closePath:this.closePath();break;case d.OPS.closeStroke:this.closeStroke();break;case d.OPS.closeFillStroke:this.closeFillStroke();break;case d.OPS.closeEOFillStroke:this.closeEOFillStroke();break;case d.OPS.nextLine:this.nextLine();break;case d.OPS.transform:this.transform(M[0],M[1],M[2],M[3],M[4],M[5]);break;case d.OPS.constructPath:this.constructPath(M[0],M[1]);break;case d.OPS.endPath:this.endPath();break;case 92:this.group(R.items);break;default:(0,d.warn)(`Unimplemented operator ${T}`);break}}}setWordSpacing(E){this.current.wordSpacing=E}setCharSpacing(E){this.current.charSpacing=E}nextLine(){this.moveText(0,this.current.leading)}setTextMatrix(E,R,T,B,M,k){const O=this.current;O.textMatrix=O.lineMatrix=[E,R,T,B,M,k],O.textMatrixScale=Math.hypot(E,R),O.x=O.lineX=0,O.y=O.lineY=0,O.xcoords=[],O.ycoords=[],O.tspan=this.svgFactory.createElement("svg:tspan"),O.tspan.setAttributeNS(null,"font-family",O.fontFamily),O.tspan.setAttributeNS(null,"font-size",`${C(O.fontSize)}px`),O.tspan.setAttributeNS(null,"y",C(-O.y)),O.txtElement=this.svgFactory.createElement("svg:text"),O.txtElement.append(O.tspan)}beginText(){const E=this.current;E.x=E.lineX=0,E.y=E.lineY=0,E.textMatrix=d.IDENTITY_MATRIX,E.lineMatrix=d.IDENTITY_MATRIX,E.textMatrixScale=1,E.tspan=this.svgFactory.createElement("svg:tspan"),E.txtElement=this.svgFactory.createElement("svg:text"),E.txtgrp=this.svgFactory.createElement("svg:g"),E.xcoords=[],E.ycoords=[]}moveText(E,R){const T=this.current;T.x=T.lineX+=E,T.y=T.lineY+=R,T.xcoords=[],T.ycoords=[],T.tspan=this.svgFactory.createElement("svg:tspan"),T.tspan.setAttributeNS(null,"font-family",T.fontFamily),T.tspan.setAttributeNS(null,"font-size",`${C(T.fontSize)}px`),T.tspan.setAttributeNS(null,"y",C(-T.y))}showText(E){const R=this.current,T=R.font,B=R.fontSize;if(B===0)return;const M=R.fontSizeScale,k=R.charSpacing,O=R.wordSpacing,H=R.fontDirection,j=R.textHScale*H,q=T.vertical,L=q?1:-1,F=T.defaultVMetrics,U=B*R.fontMatrix[0];let N=0;for(const Z of E){if(Z===null){N+=H*O;continue}else if(typeof Z=="number"){N+=L*Z*B/1e3;continue}const Q=(Z.isSpace?O:0)+k,Y=Z.fontChar;let J,ee,re=Z.width;if(q){let V;const K=Z.vmetric||F;V=Z.vmetric?K[1]:re*.5,V=-V*U;const te=K[2]*U;re=K?-K[0]:re,J=V/M,ee=(N+te)/M}else J=N/M,ee=0;(Z.isInFont||T.missingFile)&&(R.xcoords.push(R.x+J),q&&R.ycoords.push(-R.y+ee),R.tspan.textContent+=Y);const ae=q?re*U-Q*H:re*U+Q*H;N+=ae}R.tspan.setAttributeNS(null,"x",R.xcoords.map(C).join(" ")),q?R.tspan.setAttributeNS(null,"y",R.ycoords.map(C).join(" ")):R.tspan.setAttributeNS(null,"y",C(-R.y)),q?R.y-=N:R.x+=N*j,R.tspan.setAttributeNS(null,"font-family",R.fontFamily),R.tspan.setAttributeNS(null,"font-size",`${C(R.fontSize)}px`),R.fontStyle!==p.fontStyle&&R.tspan.setAttributeNS(null,"font-style",R.fontStyle),R.fontWeight!==p.fontWeight&&R.tspan.setAttributeNS(null,"font-weight",R.fontWeight);const D=R.textRenderingMode&d.TextRenderingMode.FILL_STROKE_MASK;if(D===d.TextRenderingMode.FILL||D===d.TextRenderingMode.FILL_STROKE?(R.fillColor!==p.fillColor&&R.tspan.setAttributeNS(null,"fill",R.fillColor),R.fillAlpha<1&&R.tspan.setAttributeNS(null,"fill-opacity",R.fillAlpha)):R.textRenderingMode===d.TextRenderingMode.ADD_TO_PATH?R.tspan.setAttributeNS(null,"fill","transparent"):R.tspan.setAttributeNS(null,"fill","none"),D===d.TextRenderingMode.STROKE||D===d.TextRenderingMode.FILL_STROKE){const Z=1/(R.textMatrixScale||1);this._setStrokeAttributes(R.tspan,Z)}let W=R.textMatrix;R.textRise!==0&&(W=W.slice(),W[5]+=R.textRise),R.txtElement.setAttributeNS(null,"transform",`${S(W)} scale(${C(j)}, -1)`),R.txtElement.setAttributeNS(v,"xml:space","preserve"),R.txtElement.append(R.tspan),R.txtgrp.append(R.txtElement),this._ensureTransformGroup().append(R.txtElement)}setLeadingMoveText(E,R){this.setLeading(-R),this.moveText(E,R)}addFontStyle(E){if(!E.data)throw new Error('addFontStyle: No font data available, ensure that the "fontExtraProperties" API parameter is set.');this.cssStyle||(this.cssStyle=this.svgFactory.createElement("svg:style"),this.cssStyle.setAttributeNS(null,"type","text/css"),this.defs.append(this.cssStyle));const R=x(E.data,E.mimetype,this.forceDataSchema);this.cssStyle.textContent+=`@font-face { font-family: "${E.loadedName}"; src: url(${R}); }
|
61
61
|
`}setFont(E){const R=this.current,T=this.commonObjs.get(E[0]);let B=E[1];R.font=T,this.embedFonts&&!T.missingFile&&!this.embeddedFonts[T.loadedName]&&(this.addFontStyle(T),this.embeddedFonts[T.loadedName]=T),R.fontMatrix=T.fontMatrix||d.FONT_IDENTITY_MATRIX;let M="normal";T.black?M="900":T.bold&&(M="bold");const k=T.italic?"italic":"normal";B<0?(B=-B,R.fontDirection=-1):R.fontDirection=1,R.fontSize=B,R.fontFamily=T.loadedName,R.fontWeight=M,R.fontStyle=k,R.tspan=this.svgFactory.createElement("svg:tspan"),R.tspan.setAttributeNS(null,"y",C(-R.y)),R.xcoords=[],R.ycoords=[]}endText(){var R;const E=this.current;E.textRenderingMode&d.TextRenderingMode.ADD_TO_PATH_FLAG&&((R=E.txtElement)!=null&&R.hasChildNodes())&&(E.element=E.txtElement,this.clip("nonzero"),this.endPath())}setLineWidth(E){E>0&&(this.current.lineWidth=E)}setLineCap(E){this.current.lineCap=b[E]}setLineJoin(E){this.current.lineJoin=g[E]}setMiterLimit(E){this.current.miterLimit=E}setStrokeAlpha(E){this.current.strokeAlpha=E}setStrokeRGBColor(E,R,T){this.current.strokeColor=d.Util.makeHexColor(E,R,T)}setFillAlpha(E){this.current.fillAlpha=E}setFillRGBColor(E,R,T){this.current.fillColor=d.Util.makeHexColor(E,R,T),this.current.tspan=this.svgFactory.createElement("svg:tspan"),this.current.xcoords=[],this.current.ycoords=[]}setStrokeColorN(E){this.current.strokeColor=this._makeColorN_Pattern(E)}setFillColorN(E){this.current.fillColor=this._makeColorN_Pattern(E)}shadingFill(E){const{width:R,height:T}=this.viewport,B=d.Util.inverseTransform(this.transformMatrix),[M,k,O,H]=d.Util.getAxialAlignedBoundingBox([0,0,R,T],B),j=this.svgFactory.createElement("svg:rect");j.setAttributeNS(null,"x",M),j.setAttributeNS(null,"y",k),j.setAttributeNS(null,"width",O-M),j.setAttributeNS(null,"height",H-k),j.setAttributeNS(null,"fill",this._makeShadingPattern(E)),this.current.fillAlpha<1&&j.setAttributeNS(null,"fill-opacity",this.current.fillAlpha),this._ensureTransformGroup().append(j)}_makeColorN_Pattern(E){return E[0]==="TilingPattern"?this._makeTilingPattern(E):this._makeShadingPattern(E)}_makeTilingPattern(E){const R=E[1],T=E[2],B=E[3]||d.IDENTITY_MATRIX,[M,k,O,H]=E[4],j=E[5],q=E[6],L=E[7],F=`shading${I++}`,[U,N,D,W]=d.Util.normalizeRect([...d.Util.applyTransform([M,k],B),...d.Util.applyTransform([O,H],B)]),[Z,Q]=d.Util.singularValueDecompose2dScale(B),Y=j*Z,J=q*Q,ee=this.svgFactory.createElement("svg:pattern");ee.setAttributeNS(null,"id",F),ee.setAttributeNS(null,"patternUnits","userSpaceOnUse"),ee.setAttributeNS(null,"width",Y),ee.setAttributeNS(null,"height",J),ee.setAttributeNS(null,"x",`${U}`),ee.setAttributeNS(null,"y",`${N}`);const re=this.svg,ae=this.transformMatrix,V=this.current.fillColor,K=this.current.strokeColor,te=this.svgFactory.create(D-U,W-N);if(this.svg=te,this.transformMatrix=B,L===2){const ie=d.Util.makeHexColor(...R);this.current.fillColor=ie,this.current.strokeColor=ie}return this.executeOpTree(this.convertOpList(T)),this.svg=re,this.transformMatrix=ae,this.current.fillColor=V,this.current.strokeColor=K,ee.append(te.childNodes[0]),this.defs.append(ee),`url(#${F})`}_makeShadingPattern(E){switch(typeof E=="string"&&(E=this.objs.get(E)),E[0]){case"RadialAxial":const R=`shading${I++}`,T=E[3];let B;switch(E[1]){case"axial":const M=E[4],k=E[5];B=this.svgFactory.createElement("svg:linearGradient"),B.setAttributeNS(null,"id",R),B.setAttributeNS(null,"gradientUnits","userSpaceOnUse"),B.setAttributeNS(null,"x1",M[0]),B.setAttributeNS(null,"y1",M[1]),B.setAttributeNS(null,"x2",k[0]),B.setAttributeNS(null,"y2",k[1]);break;case"radial":const O=E[4],H=E[5],j=E[6],q=E[7];B=this.svgFactory.createElement("svg:radialGradient"),B.setAttributeNS(null,"id",R),B.setAttributeNS(null,"gradientUnits","userSpaceOnUse"),B.setAttributeNS(null,"cx",H[0]),B.setAttributeNS(null,"cy",H[1]),B.setAttributeNS(null,"r",q),B.setAttributeNS(null,"fx",O[0]),B.setAttributeNS(null,"fy",O[1]),B.setAttributeNS(null,"fr",j);break;default:throw new Error(`Unknown RadialAxial type: ${E[1]}`)}for(const M of T){const k=this.svgFactory.createElement("svg:stop");k.setAttributeNS(null,"offset",M[0]),k.setAttributeNS(null,"stop-color",M[1]),B.append(k)}return this.defs.append(B),`url(#${R})`;case"Mesh":return(0,d.warn)("Unimplemented pattern Mesh"),null;case"Dummy":return"hotpink";default:throw new Error(`Unknown IR type: ${E[0]}`)}}setDash(E,R){this.current.dashArray=E,this.current.dashPhase=R}constructPath(E,R){const T=this.current;let B=T.x,M=T.y,k=[],O=0;for(const H of E)switch(H|0){case d.OPS.rectangle:B=R[O++],M=R[O++];const j=R[O++],q=R[O++],L=B+j,F=M+q;k.push("M",C(B),C(M),"L",C(L),C(M),"L",C(L),C(F),"L",C(B),C(F),"Z");break;case d.OPS.moveTo:B=R[O++],M=R[O++],k.push("M",C(B),C(M));break;case d.OPS.lineTo:B=R[O++],M=R[O++],k.push("L",C(B),C(M));break;case d.OPS.curveTo:B=R[O+4],M=R[O+5],k.push("C",C(R[O]),C(R[O+1]),C(R[O+2]),C(R[O+3]),C(B),C(M)),O+=6;break;case d.OPS.curveTo2:k.push("C",C(B),C(M),C(R[O]),C(R[O+1]),C(R[O+2]),C(R[O+3])),B=R[O+2],M=R[O+3],O+=4;break;case d.OPS.curveTo3:B=R[O+2],M=R[O+3],k.push("C",C(R[O]),C(R[O+1]),C(B),C(M),C(B),C(M)),O+=4;break;case d.OPS.closePath:k.push("Z");break}k=k.join(" "),T.path&&E.length>0&&E[0]!==d.OPS.rectangle&&E[0]!==d.OPS.moveTo?k=T.path.getAttributeNS(null,"d")+k:(T.path=this.svgFactory.createElement("svg:path"),this._ensureTransformGroup().append(T.path)),T.path.setAttributeNS(null,"d",k),T.path.setAttributeNS(null,"fill","none"),T.element=T.path,T.setCurrentPoint(B,M)}endPath(){const E=this.current;if(E.path=null,!this.pendingClip)return;if(!E.element){this.pendingClip=null;return}const R=`clippath${w++}`,T=this.svgFactory.createElement("svg:clipPath");T.setAttributeNS(null,"id",R),T.setAttributeNS(null,"transform",S(this.transformMatrix));const B=E.element.cloneNode(!0);if(this.pendingClip==="evenodd"?B.setAttributeNS(null,"clip-rule","evenodd"):B.setAttributeNS(null,"clip-rule","nonzero"),this.pendingClip=null,T.append(B),this.defs.append(T),E.activeClipUrl){E.clipGroup=null;for(const M of this.extraStack)M.clipGroup=null;T.setAttributeNS(null,"clip-path",E.activeClipUrl)}E.activeClipUrl=`url(#${R})`,this.tgrp=null}clip(E){this.pendingClip=E}closePath(){const E=this.current;if(E.path){const R=`${E.path.getAttributeNS(null,"d")}Z`;E.path.setAttributeNS(null,"d",R)}}setLeading(E){this.current.leading=-E}setTextRise(E){this.current.textRise=E}setTextRenderingMode(E){this.current.textRenderingMode=E}setHScale(E){this.current.textHScale=E/100}setRenderingIntent(E){}setFlatness(E){}setGState(E){for(const[R,T]of E)switch(R){case"LW":this.setLineWidth(T);break;case"LC":this.setLineCap(T);break;case"LJ":this.setLineJoin(T);break;case"ML":this.setMiterLimit(T);break;case"D":this.setDash(T[0],T[1]);break;case"RI":this.setRenderingIntent(T);break;case"FL":this.setFlatness(T);break;case"Font":this.setFont(T);break;case"CA":this.setStrokeAlpha(T);break;case"ca":this.setFillAlpha(T);break;default:(0,d.warn)(`Unimplemented graphic state operator ${R}`);break}}fill(){const E=this.current;E.element&&(E.element.setAttributeNS(null,"fill",E.fillColor),E.element.setAttributeNS(null,"fill-opacity",E.fillAlpha),this.endPath())}stroke(){const E=this.current;E.element&&(this._setStrokeAttributes(E.element),E.element.setAttributeNS(null,"fill","none"),this.endPath())}_setStrokeAttributes(E,R=1){const T=this.current;let B=T.dashArray;R!==1&&B.length>0&&(B=B.map(function(M){return R*M})),E.setAttributeNS(null,"stroke",T.strokeColor),E.setAttributeNS(null,"stroke-opacity",T.strokeAlpha),E.setAttributeNS(null,"stroke-miterlimit",C(T.miterLimit)),E.setAttributeNS(null,"stroke-linecap",T.lineCap),E.setAttributeNS(null,"stroke-linejoin",T.lineJoin),E.setAttributeNS(null,"stroke-width",C(R*T.lineWidth)+"px"),E.setAttributeNS(null,"stroke-dasharray",B.map(C).join(" ")),E.setAttributeNS(null,"stroke-dashoffset",C(R*T.dashPhase)+"px")}eoFill(){var E;(E=this.current.element)==null||E.setAttributeNS(null,"fill-rule","evenodd"),this.fill()}fillStroke(){this.stroke(),this.fill()}eoFillStroke(){var E;(E=this.current.element)==null||E.setAttributeNS(null,"fill-rule","evenodd"),this.fillStroke()}closeStroke(){this.closePath(),this.stroke()}closeFillStroke(){this.closePath(),this.fillStroke()}closeEOFillStroke(){this.closePath(),this.eoFillStroke()}paintSolidColorImageMask(){const E=this.svgFactory.createElement("svg:rect");E.setAttributeNS(null,"x","0"),E.setAttributeNS(null,"y","0"),E.setAttributeNS(null,"width","1px"),E.setAttributeNS(null,"height","1px"),E.setAttributeNS(null,"fill",this.current.fillColor),this._ensureTransformGroup().append(E)}paintImageXObject(E){const R=this.getObject(E);if(!R){(0,d.warn)(`Dependent image with object ID ${E} is not ready yet`);return}this.paintInlineImageXObject(R)}paintInlineImageXObject(E,R){const T=E.width,B=E.height,M=y(E,this.forceDataSchema,!!R),k=this.svgFactory.createElement("svg:rect");k.setAttributeNS(null,"x","0"),k.setAttributeNS(null,"y","0"),k.setAttributeNS(null,"width",C(T)),k.setAttributeNS(null,"height",C(B)),this.current.element=k,this.clip("nonzero");const O=this.svgFactory.createElement("svg:image");O.setAttributeNS(A,"xlink:href",M),O.setAttributeNS(null,"x","0"),O.setAttributeNS(null,"y",C(-B)),O.setAttributeNS(null,"width",C(T)+"px"),O.setAttributeNS(null,"height",C(B)+"px"),O.setAttributeNS(null,"transform",`scale(${C(1/T)} ${C(-1/B)})`),R?R.append(O):this._ensureTransformGroup().append(O)}paintImageMaskXObject(E){const R=this.getObject(E.data,E);if(R.bitmap){(0,d.warn)("paintImageMaskXObject: ImageBitmap support is not implemented, ensure that the `isOffscreenCanvasSupported` API parameter is disabled.");return}const T=this.current,B=R.width,M=R.height,k=T.fillColor;T.maskId=`mask${_++}`;const O=this.svgFactory.createElement("svg:mask");O.setAttributeNS(null,"id",T.maskId);const H=this.svgFactory.createElement("svg:rect");H.setAttributeNS(null,"x","0"),H.setAttributeNS(null,"y","0"),H.setAttributeNS(null,"width",C(B)),H.setAttributeNS(null,"height",C(M)),H.setAttributeNS(null,"fill",k),H.setAttributeNS(null,"mask",`url(#${T.maskId})`),this.defs.append(O),this._ensureTransformGroup().append(H),this.paintInlineImageXObject(R,O)}paintFormXObjectBegin(E,R){if(Array.isArray(E)&&E.length===6&&this.transform(E[0],E[1],E[2],E[3],E[4],E[5]),R){const T=R[2]-R[0],B=R[3]-R[1],M=this.svgFactory.createElement("svg:rect");M.setAttributeNS(null,"x",R[0]),M.setAttributeNS(null,"y",R[1]),M.setAttributeNS(null,"width",C(T)),M.setAttributeNS(null,"height",C(B)),this.current.element=M,this.clip("nonzero"),this.endPath()}}paintFormXObjectEnd(){}_initialize(E){const R=this.svgFactory.create(E.width,E.height),T=this.svgFactory.createElement("svg:defs");R.append(T),this.defs=T;const B=this.svgFactory.createElement("svg:g");return B.setAttributeNS(null,"transform",S(E.transform)),R.append(B),this.svg=B,R}_ensureClipGroup(){if(!this.current.clipGroup){const E=this.svgFactory.createElement("svg:g");E.setAttributeNS(null,"clip-path",this.current.activeClipUrl),this.svg.append(E),this.current.clipGroup=E}return this.current.clipGroup}_ensureTransformGroup(){return this.tgrp||(this.tgrp=this.svgFactory.createElement("svg:g"),this.tgrp.setAttributeNS(null,"transform",S(this.transformMatrix)),this.current.activeClipUrl?this._ensureClipGroup().append(this.tgrp):this.svg.append(this.tgrp)),this.tgrp}}s.SVGGraphics=$},(a,s)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.XfaText=void 0;class c{static textContent(d){const p=[],v={items:p,styles:Object.create(null)};function A(b){var y;if(!b)return;let g=null;const x=b.name;if(x==="#text")g=b.value;else if(c.shouldBuildText(x))(y=b==null?void 0:b.attributes)!=null&&y.textContent?g=b.attributes.textContent:b.value&&(g=b.value);else return;if(g!==null&&p.push({str:g}),!!b.children)for(const f of b.children)A(f)}return A(d),v}static shouldBuildText(d){return!(d==="textarea"||d==="input"||d==="option"||d==="select")}}s.XfaText=c},(a,s,c)=>{Object.defineProperty(s,"__esModule",{value:!0}),s.TextLayerRenderTask=void 0,s.renderTextLayer=S,s.updateTextLayer=w;var u=c(1),d=c(6);const p=1e5,v=30,A=.8,b=new Map;function g(_,I){let $;if(I&&u.FeatureTest.isOffscreenCanvasSupported)$=new OffscreenCanvas(_,_).getContext("2d",{alpha:!1});else{const P=document.createElement("canvas");P.width=P.height=_,$=P.getContext("2d",{alpha:!1})}return $}function x(_,I){const $=b.get(_);if($)return $;const P=g(v,I);P.font=`${v}px ${_}`;const E=P.measureText("");let R=E.fontBoundingBoxAscent,T=Math.abs(E.fontBoundingBoxDescent);if(R){const M=R/(R+T);return b.set(_,M),P.canvas.width=P.canvas.height=0,M}P.strokeStyle="red",P.clearRect(0,0,v,v),P.strokeText("g",0,0);let B=P.getImageData(0,0,v,v).data;T=0;for(let M=B.length-1-3;M>=0;M-=4)if(B[M]>0){T=Math.ceil(M/4/v);break}P.clearRect(0,0,v,v),P.strokeText("A",0,v),B=P.getImageData(0,0,v,v).data,R=0;for(let M=0,k=B.length;M<k;M+=4)if(B[M]>0){R=v-Math.floor(M/4/v);break}if(P.canvas.width=P.canvas.height=0,R){const M=R/(R+T);return b.set(_,M),M}return b.set(_,A),A}function y(_,I,$){const P=document.createElement("span"),E={angle:0,canvasWidth:0,hasText:I.str!=="",hasEOL:I.hasEOL,fontSize:0};_._textDivs.push(P);const R=u.Util.transform(_._transform,I.transform);let T=Math.atan2(R[1],R[0]);const B=$[I.fontName];B.vertical&&(T+=Math.PI/2);const M=Math.hypot(R[2],R[3]),k=M*x(B.fontFamily,_._isOffscreenCanvasSupported);let O,H;T===0?(O=R[4],H=R[5]-k):(O=R[4]+k*Math.sin(T),H=R[5]-k*Math.cos(T));const j="calc(var(--scale-factor)*",q=P.style;_._container===_._rootContainer?(q.left=`${(100*O/_._pageWidth).toFixed(2)}%`,q.top=`${(100*H/_._pageHeight).toFixed(2)}%`):(q.left=`${j}${O.toFixed(2)}px)`,q.top=`${j}${H.toFixed(2)}px)`),q.fontSize=`${j}${M.toFixed(2)}px)`,q.fontFamily=B.fontFamily,E.fontSize=M,P.setAttribute("role","presentation"),P.textContent=I.str,P.dir=I.dir,_._fontInspectorEnabled&&(P.dataset.fontName=I.fontName),T!==0&&(E.angle=T*(180/Math.PI));let L=!1;if(I.str.length>1)L=!0;else if(I.str!==" "&&I.transform[0]!==I.transform[3]){const F=Math.abs(I.transform[0]),U=Math.abs(I.transform[3]);F!==U&&Math.max(F,U)/Math.min(F,U)>1.5&&(L=!0)}L&&(E.canvasWidth=B.vertical?I.height:I.width),_._textDivProperties.set(P,E),_._isReadableStream&&_._layoutText(P)}function f(_){const{div:I,scale:$,properties:P,ctx:E,prevFontSize:R,prevFontFamily:T}=_,{style:B}=I;let M="";if(P.canvasWidth!==0&&P.hasText){const{fontFamily:k}=B,{canvasWidth:O,fontSize:H}=P;(R!==H||T!==k)&&(E.font=`${H*$}px ${k}`,_.prevFontSize=H,_.prevFontFamily=k);const{width:j}=E.measureText(I.textContent);j>0&&(M=`scaleX(${O*$/j})`)}P.angle!==0&&(M=`rotate(${P.angle}deg) ${M}`),M.length>0&&(B.transform=M)}function m(_){if(_._canceled)return;const I=_._textDivs,$=_._capability;if(I.length>p){$.resolve();return}if(!_._isReadableStream)for(const E of I)_._layoutText(E);$.resolve()}class C{constructor({textContentSource:I,container:$,viewport:P,textDivs:E,textDivProperties:R,textContentItemsStr:T,isOffscreenCanvasSupported:B}){var j;this._textContentSource=I,this._isReadableStream=I instanceof ReadableStream,this._container=this._rootContainer=$,this._textDivs=E||[],this._textContentItemsStr=T||[],this._isOffscreenCanvasSupported=B,this._fontInspectorEnabled=!!((j=globalThis.FontInspector)!=null&&j.enabled),this._reader=null,this._textDivProperties=R||new WeakMap,this._canceled=!1,this._capability=new u.PromiseCapability,this._layoutTextParams={prevFontSize:null,prevFontFamily:null,div:null,scale:P.scale*(globalThis.devicePixelRatio||1),properties:null,ctx:g(0,B)};const{pageWidth:M,pageHeight:k,pageX:O,pageY:H}=P.rawDims;this._transform=[1,0,0,-1,-O,H+k],this._pageWidth=M,this._pageHeight=k,(0,d.setLayerDimensions)($,P),this._capability.promise.finally(()=>{this._layoutTextParams=null}).catch(()=>{})}get promise(){return this._capability.promise}cancel(){this._canceled=!0,this._reader&&(this._reader.cancel(new u.AbortException("TextLayer task cancelled.")).catch(()=>{}),this._reader=null),this._capability.reject(new u.AbortException("TextLayer task cancelled."))}_processItems(I,$){for(const P of I){if(P.str===void 0){if(P.type==="beginMarkedContentProps"||P.type==="beginMarkedContent"){const E=this._container;this._container=document.createElement("span"),this._container.classList.add("markedContent"),P.id!==null&&this._container.setAttribute("id",`${P.id}`),E.append(this._container)}else P.type==="endMarkedContent"&&(this._container=this._container.parentNode);continue}this._textContentItemsStr.push(P.str),y(this,P,$)}}_layoutText(I){const $=this._layoutTextParams.properties=this._textDivProperties.get(I);if(this._layoutTextParams.div=I,f(this._layoutTextParams),$.hasText&&this._container.append(I),$.hasEOL){const P=document.createElement("br");P.setAttribute("role","presentation"),this._container.append(P)}}_render(){const I=new u.PromiseCapability;let $=Object.create(null);if(this._isReadableStream){const P=()=>{this._reader.read().then(({value:E,done:R})=>{if(R){I.resolve();return}Object.assign($,E.styles),this._processItems(E.items,$),P()},I.reject)};this._reader=this._textContentSource.getReader(),P()}else if(this._textContentSource){const{items:P,styles:E}=this._textContentSource;this._processItems(P,E),I.resolve()}else throw new Error('No "textContentSource" parameter specified.');I.promise.then(()=>{$=null,m(this)},this._capability.reject)}}s.TextLayerRenderTask=C;function S(_){!_.textContentSource&&(_.textContent||_.textContentStream)&&((0,d.deprecated)("The TextLayerRender `textContent`/`textContentStream` parameters will be removed in the future, please use `textContentSource` instead."),_.textContentSource=_.textContent||_.textContentStream);const{container:I,viewport:$}=_,P=getComputedStyle(I),E=P.getPropertyValue("visibility"),R=parseFloat(P.getPropertyValue("--scale-factor"));E==="visible"&&(!R||Math.abs(R-$.scale)>1e-5)&&console.error("The `--scale-factor` CSS-variable must be set, to the same value as `viewport.scale`, either on the `container`-element itself or higher up in the DOM.");const T=new C(_);return T._render(),T}function w({container:_,viewport:I,textDivs:$,textDivProperties:P,isOffscreenCanvasSupported:E,mustRotate:R=!0,mustRescale:T=!0}){if(R&&(0,d.setLayerDimensions)(_,{rotation:I.rotation}),T){const B=g(0,E),k={prevFontSize:null,prevFontFamily:null,div:null,scale:I.scale*(globalThis.devicePixelRatio||1),properties:null,ctx:B};for(const O of $)k.properties=P.get(O),k.div=O,f(k)}}},(a,s,c)=>{var x,y,f,m,C,S,w,_,I,$,P,ll,xo,cl,ul;Object.defineProperty(s,"__esModule",{value:!0}),s.AnnotationEditorLayer=void 0;var u=c(1),d=c(4),p=c(28),v=c(33),A=c(6),b=c(34);const M=class M{constructor({uiManager:O,pageIndex:H,div:j,accessibilityManager:q,annotationLayer:L,viewport:F,l10n:U}){bt(this,P);bt(this,x);bt(this,y,!1);bt(this,f,null);bt(this,m,this.pointerup.bind(this));bt(this,C,this.pointerdown.bind(this));bt(this,S,new Map);bt(this,w,!1);bt(this,_,!1);bt(this,I,!1);bt(this,$);const N=[p.FreeTextEditor,v.InkEditor,b.StampEditor];if(!M._initialized){M._initialized=!0;for(const D of N)D.initialize(U)}O.registerEditorTypes(N),Ct(this,$,O),this.pageIndex=H,this.div=j,Ct(this,x,q),Ct(this,f,L),this.viewport=F,He(this,$).addLayer(this)}get isEmpty(){return He(this,S).size===0}updateToolbar(O){He(this,$).updateToolbar(O)}updateMode(O=He(this,$).getMode()){it(this,P,ul).call(this),O===u.AnnotationEditorType.INK?(this.addInkEditorIfNeeded(!1),this.disableClick()):this.enableClick(),O!==u.AnnotationEditorType.NONE&&(this.div.classList.toggle("freeTextEditing",O===u.AnnotationEditorType.FREETEXT),this.div.classList.toggle("inkEditing",O===u.AnnotationEditorType.INK),this.div.classList.toggle("stampEditing",O===u.AnnotationEditorType.STAMP),this.div.hidden=!1)}addInkEditorIfNeeded(O){if(!O&&He(this,$).getMode()!==u.AnnotationEditorType.INK)return;if(!O){for(const j of He(this,S).values())if(j.isEmpty()){j.setInBackground();return}}it(this,P,xo).call(this,{offsetX:0,offsetY:0},!1).setInBackground()}setEditingState(O){He(this,$).setEditingState(O)}addCommands(O){He(this,$).addCommands(O)}enable(){this.div.style.pointerEvents="auto";const O=new Set;for(const j of He(this,S).values())j.enableEditing(),j.annotationElementId&&O.add(j.annotationElementId);if(!He(this,f))return;const H=He(this,f).getEditableAnnotations();for(const j of H){if(j.hide(),He(this,$).isDeletedAnnotationElement(j.data.id)||O.has(j.data.id))continue;const q=this.deserialize(j);q&&(this.addOrRebuild(q),q.enableEditing())}}disable(){var H;Ct(this,I,!0),this.div.style.pointerEvents="none";const O=new Set;for(const j of He(this,S).values()){if(j.disableEditing(),!j.annotationElementId||j.serialize()!==null){O.add(j.annotationElementId);continue}(H=this.getEditableAnnotation(j.annotationElementId))==null||H.show(),j.remove()}if(He(this,f)){const j=He(this,f).getEditableAnnotations();for(const q of j){const{id:L}=q.data;O.has(L)||He(this,$).isDeletedAnnotationElement(L)||q.show()}}it(this,P,ul).call(this),this.isEmpty&&(this.div.hidden=!0),Ct(this,I,!1)}getEditableAnnotation(O){var H;return((H=He(this,f))==null?void 0:H.getEditableAnnotation(O))||null}setActiveEditor(O){He(this,$).getActive()!==O&&He(this,$).setActiveEditor(O)}enableClick(){this.div.addEventListener("pointerdown",He(this,C)),this.div.addEventListener("pointerup",He(this,m))}disableClick(){this.div.removeEventListener("pointerdown",He(this,C)),this.div.removeEventListener("pointerup",He(this,m))}attach(O){He(this,S).set(O.id,O);const{annotationElementId:H}=O;H&&He(this,$).isDeletedAnnotationElement(H)&&He(this,$).removeDeletedAnnotationElement(O)}detach(O){var H;He(this,S).delete(O.id),(H=He(this,x))==null||H.removePointerInTextLayer(O.contentDiv),!He(this,I)&&O.annotationElementId&&He(this,$).addDeletedAnnotationElement(O)}remove(O){this.detach(O),He(this,$).removeEditor(O),O.div.contains(document.activeElement)&&setTimeout(()=>{He(this,$).focusMainContainer()},0),O.div.remove(),O.isAttachedToDOM=!1,He(this,_)||this.addInkEditorIfNeeded(!1)}changeParent(O){var H;O.parent!==this&&(O.annotationElementId&&(He(this,$).addDeletedAnnotationElement(O.annotationElementId),d.AnnotationEditor.deleteAnnotationElement(O),O.annotationElementId=null),this.attach(O),(H=O.parent)==null||H.detach(O),O.setParent(this),O.div&&O.isAttachedToDOM&&(O.div.remove(),this.div.append(O.div)))}add(O){if(this.changeParent(O),He(this,$).addEditor(O),this.attach(O),!O.isAttachedToDOM){const H=O.render();this.div.append(H),O.isAttachedToDOM=!0}O.fixAndSetPosition(),O.onceAdded(),He(this,$).addToAnnotationStorage(O)}moveEditorInDOM(O){var j;if(!O.isAttachedToDOM)return;const{activeElement:H}=document;O.div.contains(H)&&(O._focusEventsAllowed=!1,setTimeout(()=>{O.div.contains(document.activeElement)?O._focusEventsAllowed=!0:(O.div.addEventListener("focusin",()=>{O._focusEventsAllowed=!0},{once:!0}),H.focus())},0)),O._structTreeParentId=(j=He(this,x))==null?void 0:j.moveElementInDOM(this.div,O.div,O.contentDiv,!0)}addOrRebuild(O){O.needsToBeRebuilt()?O.rebuild():this.add(O)}addUndoableEditor(O){const H=()=>O._uiManager.rebuild(O),j=()=>{O.remove()};this.addCommands({cmd:H,undo:j,mustExec:!1})}getNextId(){return He(this,$).getId()}pasteEditor(O,H){He(this,$).updateToolbar(O),He(this,$).updateMode(O);const{offsetX:j,offsetY:q}=it(this,P,cl).call(this),L=this.getNextId(),F=it(this,P,ll).call(this,{parent:this,id:L,x:j,y:q,uiManager:He(this,$),isCentered:!0,...H});F&&this.add(F)}deserialize(O){switch(O.annotationType??O.annotationEditorType){case u.AnnotationEditorType.FREETEXT:return p.FreeTextEditor.deserialize(O,this,He(this,$));case u.AnnotationEditorType.INK:return v.InkEditor.deserialize(O,this,He(this,$));case u.AnnotationEditorType.STAMP:return b.StampEditor.deserialize(O,this,He(this,$))}return null}addNewEditor(){it(this,P,xo).call(this,it(this,P,cl).call(this),!0)}setSelected(O){He(this,$).setSelected(O)}toggleSelected(O){He(this,$).toggleSelected(O)}isSelected(O){return He(this,$).isSelected(O)}unselect(O){He(this,$).unselect(O)}pointerup(O){const{isMac:H}=u.FeatureTest.platform;if(!(O.button!==0||O.ctrlKey&&H)&&O.target===this.div&&He(this,w)){if(Ct(this,w,!1),!He(this,y)){Ct(this,y,!0);return}if(He(this,$).getMode()===u.AnnotationEditorType.STAMP){He(this,$).unselectAll();return}it(this,P,xo).call(this,O,!1)}}pointerdown(O){if(He(this,w)){Ct(this,w,!1);return}const{isMac:H}=u.FeatureTest.platform;if(O.button!==0||O.ctrlKey&&H||O.target!==this.div)return;Ct(this,w,!0);const j=He(this,$).getActive();Ct(this,y,!j||j.isEmpty())}findNewParent(O,H,j){const q=He(this,$).findParent(H,j);return q===null||q===this?!1:(q.changeParent(O),!0)}destroy(){var O,H;((O=He(this,$).getActive())==null?void 0:O.parent)===this&&(He(this,$).commitOrRemove(),He(this,$).setActiveEditor(null));for(const j of He(this,S).values())(H=He(this,x))==null||H.removePointerInTextLayer(j.contentDiv),j.setParent(null),j.isAttachedToDOM=!1,j.div.remove();this.div=null,He(this,S).clear(),He(this,$).removeLayer(this)}render({viewport:O}){this.viewport=O,(0,A.setLayerDimensions)(this.div,O);for(const H of He(this,$).getEditors(this.pageIndex))this.add(H);this.updateMode()}update({viewport:O}){He(this,$).commitOrRemove(),this.viewport=O,(0,A.setLayerDimensions)(this.div,{rotation:O.rotation}),this.updateMode()}get pageDimensions(){const{pageWidth:O,pageHeight:H}=this.viewport.rawDims;return[O,H]}};x=new WeakMap,y=new WeakMap,f=new WeakMap,m=new WeakMap,C=new WeakMap,S=new WeakMap,w=new WeakMap,_=new WeakMap,I=new WeakMap,$=new WeakMap,P=new WeakSet,ll=function(O){switch(He(this,$).getMode()){case u.AnnotationEditorType.FREETEXT:return new p.FreeTextEditor(O);case u.AnnotationEditorType.INK:return new v.InkEditor(O);case u.AnnotationEditorType.STAMP:return new b.StampEditor(O)}return null},xo=function(O,H){const j=this.getNextId(),q=it(this,P,ll).call(this,{parent:this,id:j,x:O.offsetX,y:O.offsetY,uiManager:He(this,$),isCentered:H});return q&&this.add(q),q},cl=function(){const{x:O,y:H,width:j,height:q}=this.div.getBoundingClientRect(),L=Math.max(0,O),F=Math.max(0,H),U=Math.min(window.innerWidth,O+j),N=Math.min(window.innerHeight,H+q),D=(L+U)/2-O,W=(F+N)/2-H,[Z,Q]=this.viewport.rotation%180===0?[D,W]:[W,D];return{offsetX:Z,offsetY:Q}},ul=function(){Ct(this,_,!0);for(const O of He(this,S).values())O.isEmpty()&&O.remove();Ct(this,_,!1)},yr(M,"_initialized",!1);let g=M;s.AnnotationEditorLayer=g},(a,s,c)=>{var b,g,x,y,f,m,C,S,w,_,ku,Fu,Nu,vi,dl,Lu,fl;Object.defineProperty(s,"__esModule",{value:!0}),s.FreeTextEditor=void 0;var u=c(1),d=c(5),p=c(4),v=c(29);const M=class M extends p.AnnotationEditor{constructor(H){super({...H,name:"freeTextEditor"});bt(this,_);bt(this,b,this.editorDivBlur.bind(this));bt(this,g,this.editorDivFocus.bind(this));bt(this,x,this.editorDivInput.bind(this));bt(this,y,this.editorDivKeydown.bind(this));bt(this,f);bt(this,m,"");bt(this,C,`${this.id}-editor`);bt(this,S);bt(this,w,null);Ct(this,f,H.color||M._defaultColor||p.AnnotationEditor._defaultLineColor),Ct(this,S,H.fontSize||M._defaultFontSize)}static get _keyboardManager(){const H=M.prototype,j=F=>F.isEmpty(),q=d.AnnotationEditorUIManager.TRANSLATE_SMALL,L=d.AnnotationEditorUIManager.TRANSLATE_BIG;return(0,u.shadow)(this,"_keyboardManager",new d.KeyboardManager([[["ctrl+s","mac+meta+s","ctrl+p","mac+meta+p"],H.commitOrRemove,{bubbles:!0}],[["ctrl+Enter","mac+meta+Enter","Escape","mac+Escape"],H.commitOrRemove],[["ArrowLeft","mac+ArrowLeft"],H._translateEmpty,{args:[-q,0],checker:j}],[["ctrl+ArrowLeft","mac+shift+ArrowLeft"],H._translateEmpty,{args:[-L,0],checker:j}],[["ArrowRight","mac+ArrowRight"],H._translateEmpty,{args:[q,0],checker:j}],[["ctrl+ArrowRight","mac+shift+ArrowRight"],H._translateEmpty,{args:[L,0],checker:j}],[["ArrowUp","mac+ArrowUp"],H._translateEmpty,{args:[0,-q],checker:j}],[["ctrl+ArrowUp","mac+shift+ArrowUp"],H._translateEmpty,{args:[0,-L],checker:j}],[["ArrowDown","mac+ArrowDown"],H._translateEmpty,{args:[0,q],checker:j}],[["ctrl+ArrowDown","mac+shift+ArrowDown"],H._translateEmpty,{args:[0,L],checker:j}]]))}static initialize(H){p.AnnotationEditor.initialize(H,{strings:["free_text2_default_content","editor_free_text2_aria_label"]});const j=getComputedStyle(document.documentElement);this._internalPadding=parseFloat(j.getPropertyValue("--freetext-padding"))}static updateDefaultParams(H,j){switch(H){case u.AnnotationEditorParamsType.FREETEXT_SIZE:M._defaultFontSize=j;break;case u.AnnotationEditorParamsType.FREETEXT_COLOR:M._defaultColor=j;break}}updateParams(H,j){switch(H){case u.AnnotationEditorParamsType.FREETEXT_SIZE:it(this,_,ku).call(this,j);break;case u.AnnotationEditorParamsType.FREETEXT_COLOR:it(this,_,Fu).call(this,j);break}}static get defaultPropertiesToUpdate(){return[[u.AnnotationEditorParamsType.FREETEXT_SIZE,M._defaultFontSize],[u.AnnotationEditorParamsType.FREETEXT_COLOR,M._defaultColor||p.AnnotationEditor._defaultLineColor]]}get propertiesToUpdate(){return[[u.AnnotationEditorParamsType.FREETEXT_SIZE,He(this,S)],[u.AnnotationEditorParamsType.FREETEXT_COLOR,He(this,f)]]}_translateEmpty(H,j){this._uiManager.translateSelectedEditors(H,j,!0)}getInitialTranslation(){const H=this.parentScale;return[-M._internalPadding*H,-(M._internalPadding+He(this,S))*H]}rebuild(){this.parent&&(super.rebuild(),this.div!==null&&(this.isAttachedToDOM||this.parent.add(this)))}enableEditMode(){this.isInEditMode()||(this.parent.setEditingState(!1),this.parent.updateToolbar(u.AnnotationEditorType.FREETEXT),super.enableEditMode(),this.overlayDiv.classList.remove("enabled"),this.editorDiv.contentEditable=!0,this._isDraggable=!1,this.div.removeAttribute("aria-activedescendant"),this.editorDiv.addEventListener("keydown",He(this,y)),this.editorDiv.addEventListener("focus",He(this,g)),this.editorDiv.addEventListener("blur",He(this,b)),this.editorDiv.addEventListener("input",He(this,x)))}disableEditMode(){this.isInEditMode()&&(this.parent.setEditingState(!0),super.disableEditMode(),this.overlayDiv.classList.add("enabled"),this.editorDiv.contentEditable=!1,this.div.setAttribute("aria-activedescendant",He(this,C)),this._isDraggable=!0,this.editorDiv.removeEventListener("keydown",He(this,y)),this.editorDiv.removeEventListener("focus",He(this,g)),this.editorDiv.removeEventListener("blur",He(this,b)),this.editorDiv.removeEventListener("input",He(this,x)),this.div.focus({preventScroll:!0}),this.isEditing=!1,this.parent.div.classList.add("freeTextEditing"))}focusin(H){this._focusEventsAllowed&&(super.focusin(H),H.target!==this.editorDiv&&this.editorDiv.focus())}onceAdded(){var H;if(this.width){it(this,_,fl).call(this);return}this.enableEditMode(),this.editorDiv.focus(),(H=this._initialOptions)!=null&&H.isCentered&&this.center(),this._initialOptions=null}isEmpty(){return!this.editorDiv||this.editorDiv.innerText.trim()===""}remove(){this.isEditing=!1,this.parent&&(this.parent.setEditingState(!0),this.parent.div.classList.add("freeTextEditing")),super.remove()}commit(){if(!this.isInEditMode())return;super.commit(),this.disableEditMode();const H=He(this,m),j=Ct(this,m,it(this,_,Nu).call(this).trimEnd());if(H===j)return;const q=L=>{if(Ct(this,m,L),!L){this.remove();return}it(this,_,dl).call(this),this._uiManager.rebuild(this),it(this,_,vi).call(this)};this.addCommands({cmd:()=>{q(j)},undo:()=>{q(H)},mustExec:!1}),it(this,_,vi).call(this)}shouldGetKeyboardEvents(){return this.isInEditMode()}enterInEditMode(){this.enableEditMode(),this.editorDiv.focus()}dblclick(H){this.enterInEditMode()}keydown(H){H.target===this.div&&H.key==="Enter"&&(this.enterInEditMode(),H.preventDefault())}editorDivKeydown(H){M._keyboardManager.exec(this,H)}editorDivFocus(H){this.isEditing=!0}editorDivBlur(H){this.isEditing=!1}editorDivInput(H){this.parent.div.classList.toggle("freeTextEditing",this.isEmpty())}disableEditing(){this.editorDiv.setAttribute("role","comment"),this.editorDiv.removeAttribute("aria-multiline")}enableEditing(){this.editorDiv.setAttribute("role","textbox"),this.editorDiv.setAttribute("aria-multiline",!0)}render(){if(this.div)return this.div;let H,j;this.width&&(H=this.x,j=this.y),super.render(),this.editorDiv=document.createElement("div"),this.editorDiv.className="internal",this.editorDiv.setAttribute("id",He(this,C)),this.enableEditing(),p.AnnotationEditor._l10nPromise.get("editor_free_text2_aria_label").then(L=>{var F;return(F=this.editorDiv)==null?void 0:F.setAttribute("aria-label",L)}),p.AnnotationEditor._l10nPromise.get("free_text2_default_content").then(L=>{var F;return(F=this.editorDiv)==null?void 0:F.setAttribute("default-content",L)}),this.editorDiv.contentEditable=!0;const{style:q}=this.editorDiv;if(q.fontSize=`calc(${He(this,S)}px * var(--scale-factor))`,q.color=He(this,f),this.div.append(this.editorDiv),this.overlayDiv=document.createElement("div"),this.overlayDiv.classList.add("overlay","enabled"),this.div.append(this.overlayDiv),(0,d.bindEvents)(this,this.div,["dblclick","keydown"]),this.width){const[L,F]=this.parentDimensions;if(this.annotationElementId){const{position:U}=He(this,w);let[N,D]=this.getInitialTranslation();[N,D]=this.pageTranslationToScreen(N,D);const[W,Z]=this.pageDimensions,[Q,Y]=this.pageTranslation;let J,ee;switch(this.rotation){case 0:J=H+(U[0]-Q)/W,ee=j+this.height-(U[1]-Y)/Z;break;case 90:J=H+(U[0]-Q)/W,ee=j-(U[1]-Y)/Z,[N,D]=[D,-N];break;case 180:J=H-this.width+(U[0]-Q)/W,ee=j-(U[1]-Y)/Z,[N,D]=[-N,-D];break;case 270:J=H+(U[0]-Q-this.height*Z)/W,ee=j+(U[1]-Y-this.width*W)/Z,[N,D]=[-D,N];break}this.setAt(J*L,ee*F,N,D)}else this.setAt(H*L,j*F,this.width*L,this.height*F);it(this,_,dl).call(this),this._isDraggable=!0,this.editorDiv.contentEditable=!1}else this._isDraggable=!1,this.editorDiv.contentEditable=!0;return this.div}get contentDiv(){return this.editorDiv}static deserialize(H,j,q){let L=null;if(H instanceof v.FreeTextAnnotationElement){const{data:{defaultAppearanceData:{fontSize:U,fontColor:N},rect:D,rotation:W,id:Z},textContent:Q,textPosition:Y,parent:{page:{pageNumber:J}}}=H;if(!Q||Q.length===0)return null;L=H={annotationType:u.AnnotationEditorType.FREETEXT,color:Array.from(N),fontSize:U,value:Q.join(`
|
package/package.json
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
{
|
2
2
|
"name": "@pdfme/ui",
|
3
|
-
"version": "5.3.16-dev.
|
3
|
+
"version": "5.3.16-dev.19",
|
4
4
|
"sideEffects": false,
|
5
5
|
"author": "hand-dot",
|
6
6
|
"license": "MIT",
|
@@ -43,7 +43,7 @@
|
|
43
43
|
"antd": "^5.25.0",
|
44
44
|
"form-render": "^2.2.16",
|
45
45
|
"globrex": "^0.1.2",
|
46
|
-
"hotkeys-js": "^3.
|
46
|
+
"hotkeys-js": "^3.13.10",
|
47
47
|
"lucide-react": "^0.508.0",
|
48
48
|
"react": "^16.14.0",
|
49
49
|
"react-dom": "^16.14.0",
|