UNPKG

@nutrient-sdk/node

Version:

Convert documents in your Node.js apps.

13 lines 35.6 kB
/*! * Nutrient for Node.js 1.0.0 (https://www.nutrient.io/nodejs) * * Copyright © 2024-2025 PSPDFKit GmbH. All rights reserved. * * THIS SOURCE CODE AND ANY ACCOMPANYING DOCUMENTATION ARE PROTECTED BY INTERNATIONAL COPYRIGHT LAW * AND MAY NOT BE RESOLD OR REDISTRIBUTED. USAGE IS BOUND TO THE PSPDFKIT LICENSE AGREEMENT. * UNAUTHORIZED REPRODUCTION OR DISTRIBUTION IS SUBJECT TO CIVIL AND CRIMINAL PENALTIES. * This notice may not be removed from this file. * * Nutrient uses several open source third-party components: https://www.nutrient.io/legal/acknowledgements/nodejs-acknowledgements/ */ let e,t,o,r;let n=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,8,1,6,0,6,64,25,11,11])),i=async()=>WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,10,1,8,0,65,0,253,15,253,98,11])),a=Symbol.for("wasm promise_control");function s(e,t){let o=null,r=new Promise(function(r,n){o={isDone:!1,promise:null,resolve:t=>{o.isDone||(o.isDone=!0,r(t),e&&e())},reject:e=>{o.isDone||(o.isDone=!0,n(e),t&&t())}}});return o.promise=r,r[a]=o,{promise:r,promise_control:o}}function l(e){return e[a]}function c(e){void 0!==e[a]||ex(!1,"Promise is not controllable")}let u="MONO_WASM: ";function d(e,...t){e_.diagnosticTracing&&console.debug(u+e,...t)}function f(e,...t){console.info(u+e,...t)}function m(e,...t){console.info(e,...t)}function h(e,...t){console.warn(u+e,...t)}function p(e,...t){t&&t.length>0&&t[0]&&"object"==typeof t[0]&&t[0].silent||console.error(u+e,...t)}function g(t,o,r){let n={log:o.log,error:o.error};function i(e,o,r){return function(...i){try{let n=i[0];if(void 0===n)n="undefined";else if(null===n)n="null";else if("function"==typeof n)n=n.toString();else if("string"!=typeof n)try{n=JSON.stringify(n)}catch(e){n=n.toString()}if("string"==typeof n){if("["==n[0]){let e=(new Date).toISOString();n="main"!==t?`[${t}][${e}] ${n}`:`[${e}] ${n}`}else"main"!==t&&(n=`[${t}] ${n}`)}o(r?JSON.stringify({method:e,payload:n,arguments:i}):[e+n,...i.slice(1)])}catch(e){n.error(`proxyConsole failed: ${e}`)}}}let a=["debug","trace","warn","info","error"];for(let e of a)"function"!=typeof o[e]&&(o[e]=i(`console.${e}: `,o.log,!1));let s=`${r}/console`.replace("https://","wss://").replace("http://","ws://");(e=new WebSocket(s)).addEventListener("open",()=>{n.log(`browser: [${t}] Console websocket connected.`)}),e.addEventListener("error",e=>{n.error(`[${t}] websocket error: ${e}`,e)}),e.addEventListener("close",e=>{n.error(`[${t}] websocket closed: ${e}`,e)});let l=t=>{e.readyState===WebSocket.OPEN?e.send(t):n.log(t)};for(let e of["log",...a])o[e]=i(`console.${e}`,l,!0)}let b={},w={},y={};function v(){let e=Object.values(y),t=Object.values(w),o=R(e),r=R(t),n=o+r;if(0===n)return;let i=ew?"%c":"",a=e_.config.linkerEnabled?"":"\nThis application was built with linking (tree shaking) disabled. \nPublished applications will be significantly smaller if you install wasm-tools workload. \nSee also https://aka.ms/dotnet-wasm-features";console.groupCollapsed(`${i}dotnet${i} Loaded ${j(n)} resources${i}${a}`,...ew?["background: purple; color: white; padding: 1px 3px; border-radius: 3px;","font-weight: bold;","font-weight: normal;"]:[]),e.length&&(console.groupCollapsed(`Loaded ${j(o)} resources from cache`),console.table(y),console.groupEnd()),t.length&&(console.groupCollapsed(`Loaded ${j(r)} resources from network`),console.table(w),console.groupEnd()),console.groupEnd()}async function _(){let e=t;if(e){let t=(await e.keys()).map(async t=>{t.url in b||await e.delete(t)});await Promise.all(t)}}function E(e){return`${e.resolvedUrl}.${e.hash}`}function R(e){return e.reduce((e,t)=>e+(t.responseBytes||0),0)}function j(e){return`${(e/1048576).toFixed(2)} MB`}function S(e){var t;if((null===(t=e.resources)||void 0===t?void 0:t.icu)&&"invariant"!=e.globalizationMode){let t=e.applicationCulture||(ew?navigator.languages&&navigator.languages[0]:Intl.DateTimeFormat().resolvedOptions().locale),o=Object.keys(e.resources.icu),r=null;if("custom"===e.globalizationMode?1===o.length&&(r=o[0]):"hybrid"===e.globalizationMode?r="icudt_hybrid.dat":t&&"all"!==e.globalizationMode?"sharded"===e.globalizationMode&&(r=function(e){let t=e.split("-")[0];return"en"===t||["fr","fr-FR","it","it-IT","de","de-DE","es","es-ES"].includes(e)?"icudt_EFIGS.dat":["zh","ko","ja"].includes(t)?"icudt_CJK.dat":"icudt_no_CJK.dat"}(t)):r="icudt.dat",r&&o.includes(r))return r}return e.globalizationMode="invariant",null}let x=class{constructor(e){this.url=e}toString(){return this.url}};async function A(e,t){try{let n="function"==typeof globalThis.fetch;if(eg){let i=e.startsWith("file://");if(!i&&n)return globalThis.fetch(e,t||{credentials:"same-origin"});o||(r=eR.require("url"),o=eR.require("fs")),i&&(e=r.fileURLToPath(e));let a=await o.promises.readFile(e);return{ok:!0,headers:{length:0,get:()=>null},url:e,arrayBuffer:()=>a,json:()=>JSON.parse(a),text:()=>{throw Error("NotImplementedException")}}}if(n)return globalThis.fetch(e,t||{credentials:"same-origin"});if("function"==typeof read)return{ok:!0,url:e,headers:{length:0,get:()=>null},arrayBuffer:()=>new Uint8Array(read(e,"binary")),json:()=>JSON.parse(read(e,"utf8")),text:()=>read(e,"utf8")}}catch(t){return{ok:!1,url:e,status:500,headers:{length:0,get:()=>null},statusText:"ERR28: "+t,arrayBuffer:()=>{throw t},json:()=>{throw t},text:()=>{throw t}}}throw Error("No fetch implementation available")}function D(e){return"string"!=typeof e&&ex(!1,"url must be a string"),!O(e)&&0!==e.indexOf("./")&&0!==e.indexOf("../")&&globalThis.URL&&globalThis.document&&globalThis.document.baseURI&&(e=new URL(e,globalThis.document.baseURI).toString()),e}let C=/^[a-zA-Z][a-zA-Z\d+\-.]*?:\/\//,T=/[a-zA-Z]:[\\/]/;function O(e){return eg||ey?e.startsWith("/")||e.startsWith("\\")||-1!==e.indexOf("///")||T.test(e):C.test(e)}let k,M=0,$=[],I=[],L=new Map,U={"js-module-threads":!0,"js-module-runtime":!0,"js-module-dotnet":!0,"js-module-native":!0},N={...U,"js-module-library-initializer":!0},P={...U,dotnetwasm:!0,heap:!0,manifest:!0},z={...N,manifest:!0},W={...N,dotnetwasm:!0},F={dotnetwasm:!0,symbols:!0},B={resource:!0,assembly:!0,pdb:!0,heap:!0,icu:!0},V={...N,dotnetwasm:!0,symbols:!0};function q(e){return!("icu"==e.behavior&&e.name!=e_.preferredIcuAsset)}function J(e,t,o){let r=Object.keys(t||{});ex(1==r.length,`Expect to have one ${o} asset in resources`);let n=r[0],i={name:n,hash:t[n],behavior:o};return H(i),e.push(i),i}function H(e){P[e.behavior]&&L.set(e.behavior,e)}function Q(e){let t=function(e){ex(P[e],`Unknown single asset behavior ${e}`);let t=L.get(e);return ex(t,`Single asset for ${e} not found`),t}(e);if(t.resolvedUrl=e_.locateFile(t.name),U[t.behavior]){let e=en(t);e?("string"!=typeof e&&ex(!1,"loadBootResource response for 'dotnetjs' type should be a URL string"),t.resolvedUrl=e):t.resolvedUrl=ee(t.resolvedUrl,t.behavior)}else if("dotnetwasm"!==t.behavior)throw Error(`Unknown single asset behavior ${e}`);return t}async function Z(){d("mono_download_assets");try{let e=[],t=t=>{!V[t.behavior]&&q(t)&&e_.expected_instantiated_assets_count++,!W[t.behavior]&&q(t)&&(e_.expected_downloaded_assets_count++,e.push(Y(t)))};for(let e of I)t(e);for(let e of(await e_.memorySnapshotSkippedOrDone.promise,$))if(ev.loadedMemorySnapshotSize){if(ei(e),"resource"==e.behavior||"assembly"==e.behavior||"pdb"==e.behavior){let t=X(e,""),o="string"==typeof e.virtualPath?e.virtualPath:e.name;e_._loaded_files.push({url:t,file:o})}}else t(e);e_.allDownloadsQueued.promise_control.resolve(),await e_.runtimeModuleLoaded.promise;let o=[];for(let t of e)o.push((async()=>{let e=await t;if(e.buffer){if(!V[e.behavior]){e.buffer&&"object"==typeof e.buffer||ex(!1,"asset buffer must be array-like or buffer-like or promise of these"),"string"!=typeof e.resolvedUrl&&ex(!1,"resolvedUrl must be string");let t=e.resolvedUrl,o=await e.buffer,r=new Uint8Array(o);ei(e),await ev.beforeOnRuntimeInitialized.promise,ev.instantiate_asset(e,t,r)}}else F[e.behavior]?("symbols"===e.behavior&&(await ev.instantiate_symbols_asset(e),ei(e)),F[e.behavior]&&++e_.actual_downloaded_assets_count):(e.isOptional||ex(!1,"Expected asset to have the downloaded buffer"),!W[e.behavior]&&q(e)&&e_.expected_downloaded_assets_count--,!V[e.behavior]&&q(e)&&e_.expected_instantiated_assets_count--)})());Promise.all(o).then(()=>{ev.allAssetsInMemory.promise_control.resolve()}).catch(e=>{throw e_.err("Error in mono_download_assets: "+e),eT(1,e),e})}catch(e){throw e_.err("Error in mono_download_assets: "+e),e}}async function G(e){let t=await Y(e);return await t.pendingDownloadInternal.response,t.buffer}async function Y(e){try{return await K(e)}catch(t){if(!e_.enableDownloadRetry||ey||eg||e.pendingDownload&&e.pendingDownloadInternal==e.pendingDownload||e.resolvedUrl&&-1!=e.resolvedUrl.indexOf("file://")||t&&404==t.status)throw t;e.pendingDownloadInternal=void 0,await e_.allDownloadsQueued.promise;try{return d(`Retrying download '${e.name}'`),await K(e)}catch(t){return e.pendingDownloadInternal=void 0,await new Promise(e=>globalThis.setTimeout(e,100)),d(`Retrying download (2) '${e.name}' after delay`),await K(e)}}}async function K(e){for(;k;)await k.promise;try{++M==e_.maxParallelDownloads&&(d("Throttling further parallel downloads"),k=s());let o=await async function(e){let o;if(e.pendingDownload&&(e.pendingDownloadInternal=e.pendingDownload),e.pendingDownloadInternal&&e.pendingDownloadInternal.response)return e.pendingDownloadInternal.response;if(e.buffer){let t=await e.buffer;return e.resolvedUrl||(e.resolvedUrl="undefined://"+e.name),e.pendingDownloadInternal={url:e.resolvedUrl,name:e.name,response:Promise.resolve({ok:!0,arrayBuffer:()=>t,json:()=>JSON.parse(new TextDecoder("utf-8").decode(t)),text:()=>{throw Error("NotImplementedException")},headers:{get:()=>{}}})},e.pendingDownloadInternal.response}let r=e.loadRemote&&e_.config.remoteSources?e_.config.remoteSources:[""];for(let n of r){n=n.trim(),"./"===n&&(n="");let r=X(e,n);e.name===r?d(`Attempting to download '${r}'`):d(`Attempting to download '${r}' for ${e.name}`);try{e.resolvedUrl=r;let n=function(e){try{e.resolvedUrl||ex(!1,"Request's resolvedUrl must be set");let o=async function(e){let o=await async function(e){let o;let r=t;if(!r||e.noCache||!e.hash||0===e.hash.length)return;let n=E(e);b[n]=!0;try{o=await r.match(n)}catch(e){}if(!o)return;let i=parseInt(o.headers.get("content-length")||"0");return y[e.name]={responseBytes:i},o}(e);return o||(o=await function(e){let t=e.resolvedUrl;if(e_.loadBootResource){let o=en(e);if(o instanceof Promise)return o;"string"==typeof o&&(t=o)}let o={};return e_.config.disableNoCacheFetch||(o.cache="no-cache"),e.useCredentials?o.credentials="include":!e_.config.disableIntegrityCheck&&e.hash&&(o.integrity=e.hash),e_.fetch_like(t,o)}(e),function(e,o){let r=t;if(!r||e.noCache||!e.hash||0===e.hash.length)return;let n=o.clone();setTimeout(()=>{let t=E(e);!async function(e,t,o,r){let n=await r.arrayBuffer(),i=function(e){if("undefined"!=typeof performance)return performance.getEntriesByName(e)[0]}(r.url),a=i&&i.encodedBodySize||void 0;w[t]={responseBytes:a};let s=new Response(n,{headers:{"content-type":r.headers.get("content-type")||"","content-length":(a||r.headers.get("content-length")||"").toString()}});try{await e.put(o,s)}catch(e){}}(r,e.name,t,n)},0)}(e,o)),o}(e),r={name:e.name,url:e.resolvedUrl,response:o};return eo.add(e.name),r.response.then(()=>{"assembly"==e.behavior&&e_.loadedAssemblies.push(e.name),et++,e_.onDownloadResourceProgress&&e_.onDownloadResourceProgress(et,eo.size)}),r}catch(o){let t={ok:!1,url:e.resolvedUrl,status:500,statusText:"ERR29: "+o,arrayBuffer:()=>{throw o},json:()=>{throw o}};return{name:e.name,url:e.resolvedUrl,response:Promise.resolve(t)}}}(e);if(e.pendingDownloadInternal=n,!(o=await n.response)||!o.ok)continue;return o}catch(e){o||(o={ok:!1,url:r,status:0,statusText:""+e});continue}}let n=e.isOptional||e.name.match(/\.pdb$/)&&e_.config.ignorePdbLoadErrors;if(o||ex(!1,`Response undefined ${e.name}`),!n){let t=Error(`download '${o.url}' for ${e.name} failed ${o.status} ${o.statusText}`);throw t.status=o.status,t}f(`optional download '${o.url}' for ${e.name} failed ${o.status} ${o.statusText}`)}(e);return o&&(F[e.behavior]||(e.buffer=await o.arrayBuffer(),++e_.actual_downloaded_assets_count)),e}finally{if(--M,k&&M==e_.maxParallelDownloads-1){d("Resuming more parallel downloads");let e=k;k=void 0,e.promise_control.resolve()}}}function X(e,t){let o;return null==t&&ex(!1,`sourcePrefix must be provided for ${e.name}`),e.resolvedUrl?o=e.resolvedUrl:(o=""===t?"assembly"===e.behavior||"pdb"===e.behavior?e.name:"resource"===e.behavior&&e.culture&&""!==e.culture?`${e.culture}/${e.name}`:e.name:t+e.name,o=ee(e_.locateFile(o),e.behavior)),o&&"string"==typeof o||ex(!1,"attemptUrl need to be path or url string"),o}function ee(e,t){return e_.modulesUniqueQuery&&z[t]&&(e+=e_.modulesUniqueQuery),e}let et=0,eo=new Set,er={resource:"assembly",assembly:"assembly",pdb:"pdb",icu:"globalization",vfs:"configuration",manifest:"manifest",dotnetwasm:"dotnetwasm","js-module-dotnet":"dotnetjs","js-module-native":"dotnetjs","js-module-runtime":"dotnetjs","js-module-threads":"dotnetjs"};function en(e){var t;if(e_.loadBootResource){let o=null!==(t=e.hash)&&void 0!==t?t:"",r=e.resolvedUrl,n=er[e.behavior];if(n){let t=e_.loadBootResource(n,e.name,r,o,e.behavior);return"string"==typeof t?D(t):t}}}function ei(e){e.pendingDownloadInternal=null,e.pendingDownload=null,e.buffer=null,e.moduleExports=null}async function ea(e){if(!e)return;let t=Object.keys(e);await Promise.all(t.map(e=>(async function(e){try{let t=ee(e_.locateFile(e),"js-module-library-initializer");d(`Attempting to import '${t}' for ${e}`);let o=await import(t);e_.libraryInitializers.push({scriptName:e,exports:o})}catch(t){h(`Failed to import library initializer '${e}': ${t}`)}})(e)))}async function es(e,t){if(!e_.libraryInitializers)return;let o=[];for(let r=0;r<e_.libraryInitializers.length;r++){let n=e_.libraryInitializers[r];n.exports[e]&&o.push(el(n.scriptName,e,()=>n.exports[e](...t)))}await Promise.all(o)}async function el(e,t,o){try{await o()}catch(o){throw h(`Failed to invoke '${t}' on library initializer '${e}': ${o}`),eT(1,o),o}}function ec(e,t){if(e===t)return e;let o={...t};return void 0!==o.assets&&o.assets!==e.assets&&(o.assets=[...e.assets||[],...o.assets||[]]),void 0!==o.resources&&(o.resources=ed(e.resources||{assembly:{},jsModuleNative:{},jsModuleRuntime:{},wasmNative:{}},o.resources)),void 0!==o.environmentVariables&&(o.environmentVariables={...e.environmentVariables||{},...o.environmentVariables||{}}),void 0!==o.runtimeOptions&&o.runtimeOptions!==e.runtimeOptions&&(o.runtimeOptions=[...e.runtimeOptions||[],...o.runtimeOptions||[]]),Object.assign(e,o)}function eu(e,t){if(e===t)return e;let o={...t};return o.config&&(e.config||(e.config={}),o.config=ec(e.config,o.config)),Object.assign(e,o)}function ed(e,t){if(e===t)return e;let o={...t};return void 0!==o.assembly&&(o.assembly={...e.assembly||{},...o.assembly||{}}),void 0!==o.lazyAssembly&&(o.lazyAssembly={...e.lazyAssembly||{},...o.lazyAssembly||{}}),void 0!==o.pdb&&(o.pdb={...e.pdb||{},...o.pdb||{}}),void 0!==o.jsModuleWorker&&(o.jsModuleWorker={...e.jsModuleWorker||{},...o.jsModuleWorker||{}}),void 0!==o.jsModuleNative&&(o.jsModuleNative={...e.jsModuleNative||{},...o.jsModuleNative||{}}),void 0!==o.jsModuleRuntime&&(o.jsModuleRuntime={...e.jsModuleRuntime||{},...o.jsModuleRuntime||{}}),void 0!==o.wasmSymbols&&(o.wasmSymbols={...e.wasmSymbols||{},...o.wasmSymbols||{}}),void 0!==o.wasmNative&&(o.wasmNative={...e.wasmNative||{},...o.wasmNative||{}}),void 0!==o.icu&&(o.icu={...e.icu||{},...o.icu||{}}),void 0!==o.satelliteResources&&(o.satelliteResources=ef(e.satelliteResources||{},o.satelliteResources||{})),void 0!==o.modulesAfterConfigLoaded&&(o.modulesAfterConfigLoaded={...e.modulesAfterConfigLoaded||{},...o.modulesAfterConfigLoaded||{}}),void 0!==o.modulesAfterRuntimeReady&&(o.modulesAfterRuntimeReady={...e.modulesAfterRuntimeReady||{},...o.modulesAfterRuntimeReady||{}}),void 0!==o.extensions&&(o.extensions={...e.extensions||{},...o.extensions||{}}),void 0!==o.vfs&&(o.vfs=ef(e.vfs||{},o.vfs||{})),Object.assign(e,o)}function ef(e,t){if(e===t)return e;for(let o in t)e[o]={...e[o],...t[o]};return e}function em(){let e=e_.config;if(e.environmentVariables=e.environmentVariables||{},e.runtimeOptions=e.runtimeOptions||[],e.resources=e.resources||{assembly:{},jsModuleNative:{},jsModuleWorker:{},jsModuleRuntime:{},wasmNative:{},vfs:{},satelliteResources:{}},e.assets)for(let t of(d("config.assets is deprecated, use config.resources instead"),e.assets)){let o={};o[t.name]=t.hash||"";let r={};switch(t.behavior){case"assembly":r.assembly=o;break;case"pdb":r.pdb=o;break;case"resource":r.satelliteResources={},r.satelliteResources[t.culture]=o;break;case"icu":r.icu=o;break;case"symbols":r.wasmSymbols=o;break;case"vfs":r.vfs={},r.vfs[t.virtualPath]=o;break;case"dotnetwasm":r.wasmNative=o;break;case"js-module-threads":r.jsModuleWorker=o;break;case"js-module-runtime":r.jsModuleRuntime=o;break;case"js-module-native":r.jsModuleNative=o;break;case"js-module-dotnet":break;default:throw Error(`Unexpected behavior ${t.behavior} of asset ${t.name}`)}ed(e.resources,r)}e_.assertAfterExit=e.assertAfterExit=e.assertAfterExit||!ew,e.debugLevel,void 0===e.cachedResourcesPurgeDelay&&(e.cachedResourcesPurgeDelay=1e4),e.diagnosticTracing,e.applicationCulture&&(e.environmentVariables.LANG=`${e.applicationCulture}.UTF-8`),ev.diagnosticTracing=e_.diagnosticTracing=!!e.diagnosticTracing,ev.waitForDebugger=e.waitForDebugger,e.startupMemoryCache=!!e.startupMemoryCache,e.startupMemoryCache&&ev.waitForDebugger&&(d("Disabling startupMemoryCache because waitForDebugger is set"),e.startupMemoryCache=!1),ev.enablePerfMeasure=!!e.browserProfilerOptions&&globalThis.performance&&"function"==typeof globalThis.performance.measure,e_.maxParallelDownloads=e.maxParallelDownloads||e_.maxParallelDownloads,e_.enableDownloadRetry=void 0!==e.enableDownloadRetry?e.enableDownloadRetry:e_.enableDownloadRetry}let eh=!1;function ep(){return!!globalThis.navigator&&(e_.isChromium||e_.isFirefox)}let eg="object"==typeof process&&"object"==typeof process.versions&&"string"==typeof process.versions.node,eb="function"==typeof importScripts,ew="object"==typeof window||eb&&!eg,ey=!ew&&!eg&&!eb,ev={},e_={},eE={},eR={},ej=!1,eS={mono:{},binding:{},internal:eR,module:{},loaderHelpers:e_,runtimeHelpers:ev,api:eE};function ex(e,t){if(e)return;let o="Assert failed: "+("function"==typeof t?t():t),r=Error(o);ev.abort(r)}function eA(){return void 0!==e_.exitCode}function eD(){return ev.runtimeReady&&!eA()}function eC(){ev.runtimeReady||ex(!1,"mono runtime didn't start yet"),e_.assertAfterExit&&eA()&&ex(!1,`mono runtime already exited with ${e_.exitCode}`)}function eT(t,o){var r,n;let i=o&&"object"==typeof o;t=i&&"number"==typeof o.status?o.status:t;let a=i&&"string"==typeof o.message?o.message:""+o;if((o=i?o:ev.ExitStatus?new ev.ExitStatus(t):Error("Exit with code "+t+" "+a)).status=t,o.message||(o.message=a),o.stack||(o.stack=Error().stack||""),o.silent=!0,!eA()){try{ev.runtimeReady||(d("abort_startup, reason: "+o),n=o,e_.allDownloadsQueued.promise_control.reject(n),e_.afterConfigLoaded.promise_control.reject(n),e_.wasmDownloadPromise.promise_control.reject(n),e_.runtimeModuleLoaded.promise_control.reject(n),e_.memorySnapshotSkippedOrDone.promise_control.reject(n),ev.dotnetReady&&(ev.dotnetReady.promise_control.reject(n),ev.afterInstantiateWasm.promise_control.reject(n),ev.beforePreInit.promise_control.reject(n),ev.afterPreInit.promise_control.reject(n),ev.afterPreRun.promise_control.reject(n),ev.beforeOnRuntimeInitialized.promise_control.reject(n),ev.afterOnRuntimeInitialized.promise_control.reject(n),ev.afterPostRun.promise_control.reject(n))),function(t,o){if(0!==t&&o){let e=ev.ExitStatus&&o instanceof ev.ExitStatus?d:p;e("string"==typeof o?o:o.stack&&o.message?ev.stringify_as_error_with_stack?ev.stringify_as_error_with_stack(o):o.message+"\n"+o.stack:JSON.stringify(o))}if(e_.config&&e_.config.logExitCode){if(e){let o=()=>{0==e.bufferedAmount?m("WASM EXIT "+t):globalThis.setTimeout(o,100)};o()}else m("WASM EXIT "+t)}}(t,o),function(e){if(ew&&e_.config&&e_.config.appendElementOnExit){let t=document.createElement("label");t.id="tests_done",e&&(t.style.background="red"),t.innerHTML=e.toString(),document.body.appendChild(t)}}(t),ev.jiterpreter_dump_stats&&ev.jiterpreter_dump_stats(!1),0===t&&(null===(r=e_.config)||void 0===r?void 0:r.interopCleanupOnExit)&&ev.forceDisposeProxies(!0,!0)}catch(e){h("mono_exit failed",e)}e_.exitCode=t}if(e_.config&&e_.config.asyncFlushOnExit&&0===t)throw(async()=>{try{await async function(){try{let e=await import("process"),t=e=>new Promise((t,o)=>{e.on("error",e=>o(e)),e.write("",function(){t()})}),o=t(e.stderr),r=t(e.stdout);await Promise.all([r,o])}catch(e){p(`flushing std* streams failed: ${e}`)}}()}finally{eO(t,o)}})(),o;eO(t,o)}function eO(e,t){if(eD()&&ev.mono_wasm_exit&&ev.mono_wasm_exit(e),0!==e||!ew)throw eg&&eR.process?eR.process.exit(e):ev.quit&&ev.quit(e,t),t}!function(e){if(ej)throw Error("Loader module already loaded");ej=!0,ev=e.runtimeHelpers,e_=e.loaderHelpers,eE=e.api,eR=e.internal,Object.assign(eE,{INTERNAL:eR,invokeLibraryInitializers:es}),Object.assign(e.module,{disableDotnet6Compatibility:!0,config:{environmentVariables:{}}}),Object.assign(ev,{mono_wasm_bindings_is_ready:!1,javaScriptExports:{},config:e.module.config,diagnosticTracing:!1,abort:e=>{throw e}}),Object.assign(e_,{gitHash:"eba546b0f0d448e0176a2222548fd7a2fbf464c0",config:e.module.config,diagnosticTracing:!1,maxParallelDownloads:16,enableDownloadRetry:!0,assertAfterExit:!ew,_loaded_files:[],loadedFiles:[],loadedAssemblies:[],libraryInitializers:[],actual_downloaded_assets_count:0,actual_instantiated_assets_count:0,expected_downloaded_assets_count:0,expected_instantiated_assets_count:0,afterConfigLoaded:s(),allDownloadsQueued:s(),wasmDownloadPromise:s(),runtimeModuleLoaded:s(),memorySnapshotSkippedOrDone:s(),is_exited:eA,is_runtime_running:eD,assert_runtime_running:eC,mono_exit:eT,createPromiseController:s,getPromiseController:l,assertIsControllablePromise:c,mono_download_assets:Z,resolve_single_asset_path:Q,setup_proxy_console:g,logDownloadStatsToConsole:v,purgeUnusedCacheEntriesAsync:_,retrieve_asset_download:G,invokeLibraryInitializers:es,isDebuggingSupported:ep,exceptions:n,simd:i})}(eS);let ek=!1,eM=eS.module,e$=eM.config;async function eI(e){if("function"==typeof e){let t=e(eS.api);if(t.ready)throw Error("Module.ready couldn't be redefined.");Object.assign(eM,t),eu(eM,t)}else{if("object"!=typeof e)throw Error("Can't use moduleFactory callback of createDotnetRuntime function.");eu(eM,e)}return await async function(e){var t;if(eg){let e=await import("process");if(e.versions.node.split(".")[0]<14)throw Error(`NodeJS at '${e.execPath}' has too low version '${e.versions.node}', please use at least 14. See also https://aka.ms/dotnet-wasm-features`)}let o=import.meta.url,r=o.indexOf("?");if(r>0&&(e_.modulesUniqueQuery=o.substring(r)),e_.scriptUrl=o.replace(/\\/g,"/").replace(/[?#].*/,""),e_.scriptDirectory=(t=e_.scriptUrl).slice(0,t.lastIndexOf("/"))+"/",e_.locateFile=e=>"URL"in globalThis&&globalThis.URL!==x?new URL(e,e_.scriptDirectory).toString():O(e)?e:e_.scriptDirectory+e,e_.fetch_like=A,e_.out=console.log,e_.err=console.error,e_.onDownloadResourceProgress=e.onDownloadResourceProgress,ew&&globalThis.navigator){let e=globalThis.navigator,t=e.userAgentData&&e.userAgentData.brands;t&&t.length>0?e_.isChromium=t.some(e=>"Google Chrome"===e.brand||"Microsoft Edge"===e.brand||"Chromium"===e.brand):e.userAgent&&(e_.isChromium=e.userAgent.includes("Chrome"),e_.isFirefox=e.userAgent.includes("Firefox"))}eR.require=eg?await import("module").then(e=>e.createRequire(import.meta.url)):Promise.resolve(()=>{throw Error("require not supported")}),void 0===globalThis.URL&&(globalThis.URL=x)}(eM),eM.ENVIRONMENT_IS_PTHREAD?async function(){(function(){let e=new MessageChannel,t=e.port1,o=e.port2;t.addEventListener("message",e=>{var r;r=JSON.parse(e.data.config),ek?d("mono config already received"):(ec(e_.config,r),em(),d("mono config received"),ek=!0,e_.afterConfigLoaded.promise_control.resolve(e_.config),ew&&r.forwardConsoleLogsToWS&&void 0!==globalThis.WebSocket&&e_.setup_proxy_console("pthread-worker",console,self.location.href)),t.close(),o.close()},{once:!0}),t.start(),self.postMessage({__mono_message_please_dont_collide__:{monoCmd:"preload",port:o}},[o])})(),await e_.afterConfigLoaded.promise,function(){let e=e_.config;for(let t of(e.assets||ex(!1,"config.assets must be defined"),e.assets))H(t)}();let e=eL(),t=await Promise.all(e);return await eU(t),eM}():async function(){var e;eM.configSrc||e_.config&&0!==Object.keys(e_.config).length&&(e_.config.assets||e_.config.resources)||(eM.configSrc="./blazor.boot.json"),await async function(e){var t;let o=e.configSrc;if(eh)await e_.afterConfigLoaded.promise;else try{if(eh=!0,o&&(d("mono_wasm_load_config"),await async function(e){let t;let o=e_.locateFile(e.configSrc),r=void 0!==e_.loadBootResource?e_.loadBootResource("manifest","blazor.boot.json",o,"","manifest"):i(o);t=r?"string"==typeof r?await i(D(r)):await r:await i(ee(o,"manifest"));let n=await async function(e){let t=e_.config,o=await e.json();t.applicationEnvironment||(o.applicationEnvironment=e.headers.get("Blazor-Environment")||e.headers.get("DotNet-Environment")||"Production"),o.environmentVariables||(o.environmentVariables={});let r=e.headers.get("DOTNET-MODIFIABLE-ASSEMBLIES");r&&(o.environmentVariables.DOTNET_MODIFIABLE_ASSEMBLIES=r);let n=e.headers.get("ASPNETCORE-BROWSER-TOOLS");return n&&(o.environmentVariables.__ASPNETCORE_BROWSER_TOOLS=n),o}(t);function i(e){return e_.fetch_like(e,{method:"GET",credentials:"include",cache:"no-cache"})}ec(e_.config,n)}(e)),em(),await ea(null===(t=e_.config.resources)||void 0===t?void 0:t.modulesAfterConfigLoaded),await es("onRuntimeConfigLoaded",[e_.config]),e.onConfigLoaded)try{await e.onConfigLoaded(e_.config,eE),em()}catch(e){throw p("onConfigLoaded() failed",e),e}em(),e_.config.startupMemoryCache&&e.instantiateWasm&&ex(!1,"startupMemoryCache is not supported with Module.instantiateWasm"),e_.afterConfigLoaded.promise_control.resolve(e_.config),e_.config.startupMemoryCache||e_.memorySnapshotSkippedOrDone.promise_control.resolve()}catch(r){let t=`Failed to load config file ${o} ${r} ${null==r?void 0:r.stack}`;throw e_.config=e.config=Object.assign(e_.config,{message:t,error:r,isError:!0}),eT(1,Error(t)),r}}(eM),function(){let e=e_.config,t=[];if(e.assets)for(let t of e.assets)"object"!=typeof t&&ex(!1,`asset must be object, it was ${typeof t} : ${t}`),"string"!=typeof t.behavior&&ex(!1,"asset behavior must be known string"),"string"!=typeof t.name&&ex(!1,"asset name must be string"),t.resolvedUrl&&"string"!=typeof t.resolvedUrl&&ex(!1,"asset resolvedUrl could be string"),t.hash&&"string"!=typeof t.hash&&ex(!1,"asset resolvedUrl could be string"),t.pendingDownload&&"object"!=typeof t.pendingDownload&&ex(!1,"asset pendingDownload could be object"),B[t.behavior]?$.push(t):I.push(t),H(t);else if(e.resources){let o=e.resources;if(o.wasmNative||ex(!1,"resources.wasmNative must be defined"),o.jsModuleNative||ex(!1,"resources.jsModuleNative must be defined"),o.jsModuleRuntime||ex(!1,"resources.jsModuleRuntime must be defined"),J(I,o.wasmNative,"dotnetwasm"),J(t,o.jsModuleNative,"js-module-native"),J(t,o.jsModuleRuntime,"js-module-runtime"),o.assembly)for(let e in o.assembly)$.push({name:e,hash:o.assembly[e],behavior:"assembly"});if(0!=e.debugLevel&&e_.isDebuggingSupported()&&o.pdb)for(let e in o.pdb)$.push({name:e,hash:o.pdb[e],behavior:"pdb"});if(e.loadAllSatelliteResources&&o.satelliteResources)for(let e in o.satelliteResources)for(let t in o.satelliteResources[e])$.push({name:t,hash:o.satelliteResources[e][t],behavior:"resource",culture:e});if(o.vfs)for(let e in o.vfs)for(let t in o.vfs[e])I.push({name:t,hash:o.vfs[e][t],behavior:"vfs",virtualPath:e});let r=S(e);if(r&&o.icu)for(let e in o.icu)e===r&&$.push({name:e,hash:o.icu[e],behavior:"icu",loadRemote:!0});if(o.wasmSymbols)for(let e in o.wasmSymbols)I.push({name:e,hash:o.wasmSymbols[e],behavior:"symbols"})}if(e.appsettings)for(let t=0;t<e.appsettings.length;t++){let o=e.appsettings[t],r=function(e){let t=e.lastIndexOf("/");return t>=0&&t++,e.substring(t)}(o);"appsettings.json"!==r&&r!==`appsettings.${e.applicationEnvironment}.json`||I.push({name:o,behavior:"vfs",noCache:!0,useCredentials:!0})}e.assets=[...$,...I,...t]}();let o=eL();await async function(){t=await async function(e){if(!e_.config.cacheBootResources||void 0===globalThis.caches||void 0===globalThis.document||!1===window.isSecureContext)return null;let t=`dotnet-resources-${globalThis.document.baseURI.substring(globalThis.document.location.origin.length)}`;try{return await caches.open(t)||null}catch(e){return null}}()}(),Y(Q("dotnetwasm")).then(e=>{e_.wasmDownloadPromise.promise_control.resolve(e)}).catch(e=>{eT(1,e)}),setTimeout(()=>{(function(){if(e_.preferredIcuAsset=S(e_.config),e_.invariantMode="invariant"==e_.config.globalizationMode,!e_.invariantMode){if(e_.preferredIcuAsset)d("ICU data archive(s) available, disabling invariant mode");else{if("custom"===e_.config.globalizationMode||"all"===e_.config.globalizationMode||"sharded"===e_.config.globalizationMode){let e="invariant globalization mode is inactive and no ICU data archives are available";throw p(`ERROR: ${e}`),Error(e)}d("ICU data archive(s) not available, using invariant globalization mode"),e_.invariantMode=!0,e_.preferredIcuAsset=null}}let e="DOTNET_SYSTEM_GLOBALIZATION_INVARIANT",t="DOTNET_SYSTEM_GLOBALIZATION_HYBRID",o=e_.config.environmentVariables;if(void 0===o[t]&&"hybrid"===e_.config.globalizationMode?o[t]="1":void 0===o[e]&&e_.invariantMode&&(o[e]="1"),void 0===o.TZ)try{let e=Intl.DateTimeFormat().resolvedOptions().timeZone||null;e&&(o.TZ=e)}catch(e){f("failed to detect timezone, will fallback to UTC")}})(),Z()},0);let r=await Promise.all(o);return await eU(r),await ev.dotnetReady.promise,await ea(null===(e=e_.config.resources)||void 0===e?void 0:e.modulesAfterRuntimeReady),await es("onRuntimeReady",[eS.api]),eE}()}function eL(){let e,t;let o=Q("js-module-runtime"),r=Q("js-module-native");return"object"==typeof o.moduleExports?e=o.moduleExports:(d(`Attempting to import '${o.resolvedUrl}' for ${o.name}`),e=import(o.resolvedUrl)),"object"==typeof r.moduleExports?t=r.moduleExports:(d(`Attempting to import '${r.resolvedUrl}' for ${r.name}`),t=import(r.resolvedUrl)),[e,t]}async function eU(e){let{initializeExports:t,initializeReplacements:o,configureRuntimeStartup:r,configureEmscriptenStartup:n,configureWorkerStartup:i,setRuntimeGlobals:a,passEmscriptenInternals:s}=e[0],{default:l}=e[1];a(eS),t(eS),await r(eS.module),e_.runtimeModuleLoaded.promise_control.resolve(),l(e=>(Object.assign(eM,{ready:e.ready,__dotnet_runtime:{initializeReplacements:o,configureEmscriptenStartup:n,configureWorkerStartup:i,passEmscriptenInternals:s}}),eM))}let eN=new class{withModuleConfig(e){try{return eu(eM,e),this}catch(e){throw eT(1,e),e}}withOnConfigLoaded(e){try{return eu(eM,{onConfigLoaded:e}),this}catch(e){throw eT(1,e),e}}withConsoleForwarding(){try{return ec(e$,{forwardConsoleLogsToWS:!0}),this}catch(e){throw eT(1,e),e}}withExitOnUnhandledError(){let e=function(e,t){e.preventDefault();try{t&&t.silent||eT(1,t)}catch(e){}};try{return ew&&(window.addEventListener("unhandledrejection",t=>e(t,t.reason)),window.addEventListener("error",t=>e(t,t.error))),this}catch(e){throw eT(1,e),e}}withAsyncFlushOnExit(){try{return ec(e$,{asyncFlushOnExit:!0}),this}catch(e){throw eT(1,e),e}}withExitCodeLogging(){try{return ec(e$,{logExitCode:!0}),this}catch(e){throw eT(1,e),e}}withElementOnExit(){try{return ec(e$,{appendElementOnExit:!0}),this}catch(e){throw eT(1,e),e}}withInteropCleanupOnExit(){try{return ec(e$,{interopCleanupOnExit:!0}),this}catch(e){throw eT(1,e),e}}withAssertAfterExit(){try{return ec(e$,{assertAfterExit:!0}),this}catch(e){throw eT(1,e),e}}withWaitingForDebugger(e){try{return ec(e$,{waitForDebugger:e}),this}catch(e){throw eT(1,e),e}}withStartupMemoryCache(e){try{return ec(e$,{startupMemoryCache:e}),this}catch(e){throw eT(1,e),e}}withConfig(e){try{return ec(e$,e),this}catch(e){throw eT(1,e),e}}withConfigSrc(e){try{return e&&"string"==typeof e||ex(!1,"must be file path or URL"),eu(eM,{configSrc:e}),this}catch(e){throw eT(1,e),e}}withVirtualWorkingDirectory(e){try{return e&&"string"==typeof e||ex(!1,"must be directory path"),this.virtualWorkingDirectory=e,this}catch(e){throw eT(1,e),e}}withEnvironmentVariable(e,t){try{let o={};return o[e]=t,ec(e$,{environmentVariables:o}),this}catch(e){throw eT(1,e),e}}withEnvironmentVariables(e){try{return e&&"object"==typeof e||ex(!1,"must be dictionary object"),ec(e$,{environmentVariables:e}),this}catch(e){throw eT(1,e),e}}withDiagnosticTracing(e){try{return"boolean"!=typeof e&&ex(!1,"must be boolean"),ec(e$,{diagnosticTracing:e}),this}catch(e){throw eT(1,e),e}}withDebugging(e){try{return e&&"number"==typeof e||ex(!1,"must be number"),ec(e$,{debugLevel:e}),this}catch(e){throw eT(1,e),e}}withApplicationArguments(...e){try{return e&&Array.isArray(e)||ex(!1,"must be array of strings"),this.applicationArguments=e,this}catch(e){throw eT(1,e),e}}withRuntimeOptions(e){try{return e&&Array.isArray(e)||ex(!1,"must be array of strings"),ec(e$,{runtimeOptions:e}),this}catch(e){throw eT(1,e),e}}withMainAssembly(e){try{return ec(e$,{mainAssemblyName:e}),this}catch(e){throw eT(1,e),e}}withApplicationArgumentsFromQuery(){try{if(!globalThis.window)throw Error("Missing window to the query parameters from");if(void 0===globalThis.URLSearchParams)throw Error("URLSearchParams is supported");let e=new URLSearchParams(window.location.search).getAll("arg");return this.withApplicationArguments(...e)}catch(e){throw eT(1,e),e}}withApplicationEnvironment(e){try{return ec(e$,{applicationEnvironment:e}),this}catch(e){throw eT(1,e),e}}withApplicationCulture(e){try{return ec(e$,{applicationCulture:e}),this}catch(e){throw eT(1,e),e}}withResourceLoader(e){try{return e_.loadBootResource=e,this}catch(e){throw eT(1,e),e}}async create(){try{if(this.instance||(ew&&eM.config.forwardConsoleLogsToWS&&void 0!==globalThis.WebSocket&&g("main",globalThis.console,globalThis.location.origin),eM||ex(!1,"Null moduleConfig"),eM.config||ex(!1,"Null moduleConfig.config"),await eI(eM),this.instance=eS.api),this.virtualWorkingDirectory){let e=this.instance.Module.FS,t=e.stat(this.virtualWorkingDirectory);t&&e.isDir(t.mode)||ex(!1,`Could not find working directory ${this.virtualWorkingDirectory}`),e.chdir(this.virtualWorkingDirectory)}return this.instance}catch(e){throw eT(1,e),e}}async run(){try{if(eM.config||ex(!1,"Null moduleConfig.config"),this.instance||await this.create(),eM.config.mainAssemblyName||ex(!1,"Null moduleConfig.config.mainAssemblyName"),!this.applicationArguments){if(eg){let e=await import("process");this.applicationArguments=e.argv.slice(2)}else this.applicationArguments=[]}return this.instance.runMainAndExit(eM.config.mainAssemblyName,this.applicationArguments)}catch(e){throw eT(1,e),e}}},eP=eT,ez=eI;ey||"function"==typeof globalThis.URL||ex(!1,"This browser/engine doesn't support URL API. Please use a modern version. See also https://aka.ms/dotnet-wasm-features"),"function"!=typeof globalThis.BigInt64Array&&ex(!1,"This browser/engine doesn't support BigInt64Array API. Please use a modern version. See also https://aka.ms/dotnet-wasm-features");export{ez as default,eN as dotnet,eP as exit};