@componentor/quickjs-wasmfs-release-sync 0.31.21 → 0.31.23
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/emscripten-module.browser.d.ts +5 -9
- package/dist/emscripten-module.browser.mjs +90 -82
- package/dist/emscripten-module.wasm +0 -0
- package/dist/ffi.d.mts +4 -14
- package/dist/ffi.d.ts +4 -14
- package/dist/ffi.js +1 -1
- package/dist/ffi.js.map +1 -1
- package/dist/ffi.mjs +1 -1
- package/dist/ffi.mjs.map +1 -1
- package/dist/index.d.mts +4 -4
- package/dist/index.d.ts +4 -4
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +1 -1
- package/dist/index.mjs.map +1 -1
- package/dist/quickjs-wasmfs-worker.js +107 -0
- package/package.json +3 -3
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/ffi.ts","../src/index.ts"],"sourcesContent":["// This file generated by \"generate.ts ffi\" in the root of the repo.\nimport {\n QuickJSAsyncEmscriptenModule,\n JSRuntimePointer,\n JSContextPointer,\n JSContextPointerPointer,\n JSModuleDefPointer,\n JSValuePointer,\n JSValueConstPointer,\n JSValuePointerPointer,\n JSValuePointerPointerPointer,\n JSValueConstPointerPointer,\n QTS_C_To_HostCallbackFuncPointer,\n QTS_C_To_HostInterruptFuncPointer,\n QTS_C_To_HostLoadModuleFuncPointer,\n BorrowedHeapCharPointer,\n OwnedHeapCharPointer,\n JSBorrowedCharPointer,\n JSVoidPointer,\n UInt32Pointer,\n EvalFlags,\n IntrinsicsFlags,\n EvalDetectModule,\n GetOwnPropertyNamesFlags,\n IsEqualOp,\n JSPromiseStateEnum,\n assertSync,\n} from \"@componentor/quickjs-ffi-types\"\n\n/**\n * Low-level FFI bindings to QuickJS's Emscripten module.\n * See instead {@link QuickJSContext}, the public Javascript interface exposed by this\n * library.\n *\n * @unstable The FFI interface is considered private and may change.\n */\nexport class QuickJSAsyncFFI {\n constructor(private module: QuickJSAsyncEmscriptenModule) {}\n /** Set at compile time. */\n readonly DEBUG = false\n\n QTS_Throw: (\n ctx: JSContextPointer,\n error: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_Throw\", \"number\", [\"number\", \"number\"])\n\n QTS_NewError: (ctx: JSContextPointer) => JSValuePointer = this.module.cwrap(\n \"QTS_NewError\",\n \"number\",\n [\"number\"],\n )\n\n QTS_RuntimeSetMemoryLimit: (rt: JSRuntimePointer, limit: number) => void = this.module.cwrap(\n \"QTS_RuntimeSetMemoryLimit\",\n null,\n [\"number\", \"number\"],\n )\n\n QTS_RuntimeComputeMemoryUsage: (rt: JSRuntimePointer, ctx: JSContextPointer) => JSValuePointer =\n this.module.cwrap(\"QTS_RuntimeComputeMemoryUsage\", \"number\", [\"number\", \"number\"])\n\n QTS_RuntimeDumpMemoryUsage: (rt: JSRuntimePointer) => OwnedHeapCharPointer = this.module.cwrap(\n \"QTS_RuntimeDumpMemoryUsage\",\n \"number\",\n [\"number\"],\n )\n\n QTS_RecoverableLeakCheck: () => number = this.module.cwrap(\n \"QTS_RecoverableLeakCheck\",\n \"number\",\n [],\n )\n\n QTS_BuildIsSanitizeLeak: () => number = this.module.cwrap(\"QTS_BuildIsSanitizeLeak\", \"number\", [])\n\n QTS_RuntimeSetMaxStackSize: (rt: JSRuntimePointer, stack_size: number) => void =\n this.module.cwrap(\"QTS_RuntimeSetMaxStackSize\", null, [\"number\", \"number\"])\n\n QTS_GetUndefined: () => JSValueConstPointer = this.module.cwrap(\"QTS_GetUndefined\", \"number\", [])\n\n QTS_GetNull: () => JSValueConstPointer = this.module.cwrap(\"QTS_GetNull\", \"number\", [])\n\n QTS_GetFalse: () => JSValueConstPointer = this.module.cwrap(\"QTS_GetFalse\", \"number\", [])\n\n QTS_GetTrue: () => JSValueConstPointer = this.module.cwrap(\"QTS_GetTrue\", \"number\", [])\n\n QTS_NewRuntime: () => JSRuntimePointer = this.module.cwrap(\"QTS_NewRuntime\", \"number\", [])\n\n QTS_FreeRuntime: (rt: JSRuntimePointer) => void = this.module.cwrap(\"QTS_FreeRuntime\", null, [\n \"number\",\n ])\n\n QTS_NewContext: (rt: JSRuntimePointer, intrinsics: IntrinsicsFlags) => JSContextPointer =\n this.module.cwrap(\"QTS_NewContext\", \"number\", [\"number\", \"number\"])\n\n QTS_FreeContext: (ctx: JSContextPointer) => void = this.module.cwrap(\"QTS_FreeContext\", null, [\n \"number\",\n ])\n\n QTS_FreeValuePointer: (ctx: JSContextPointer, value: JSValuePointer) => void = this.module.cwrap(\n \"QTS_FreeValuePointer\",\n null,\n [\"number\", \"number\"],\n )\n\n QTS_FreeValuePointerRuntime: (rt: JSRuntimePointer, value: JSValuePointer) => void =\n this.module.cwrap(\"QTS_FreeValuePointerRuntime\", null, [\"number\", \"number\"])\n\n QTS_FreeVoidPointer: (ctx: JSContextPointer, ptr: JSVoidPointer) => void = this.module.cwrap(\n \"QTS_FreeVoidPointer\",\n null,\n [\"number\", \"number\"],\n )\n\n QTS_FreeCString: (ctx: JSContextPointer, str: JSBorrowedCharPointer) => void = this.module.cwrap(\n \"QTS_FreeCString\",\n null,\n [\"number\", \"number\"],\n )\n\n QTS_DupValuePointer: (\n ctx: JSContextPointer,\n val: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_DupValuePointer\", \"number\", [\"number\", \"number\"])\n\n QTS_NewObject: (ctx: JSContextPointer) => JSValuePointer = this.module.cwrap(\n \"QTS_NewObject\",\n \"number\",\n [\"number\"],\n )\n\n QTS_NewObjectProto: (\n ctx: JSContextPointer,\n proto: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_NewObjectProto\", \"number\", [\"number\", \"number\"])\n\n QTS_NewArray: (ctx: JSContextPointer) => JSValuePointer = this.module.cwrap(\n \"QTS_NewArray\",\n \"number\",\n [\"number\"],\n )\n\n QTS_NewArrayBuffer: (\n ctx: JSContextPointer,\n buffer: JSVoidPointer,\n length: number,\n ) => JSValuePointer = this.module.cwrap(\"QTS_NewArrayBuffer\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n ])\n\n QTS_NewFloat64: (ctx: JSContextPointer, num: number) => JSValuePointer = this.module.cwrap(\n \"QTS_NewFloat64\",\n \"number\",\n [\"number\", \"number\"],\n )\n\n QTS_GetFloat64: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => number =\n this.module.cwrap(\"QTS_GetFloat64\", \"number\", [\"number\", \"number\"])\n\n QTS_NewString: (ctx: JSContextPointer, string: BorrowedHeapCharPointer) => JSValuePointer =\n this.module.cwrap(\"QTS_NewString\", \"number\", [\"number\", \"number\"])\n\n QTS_GetString: (\n ctx: JSContextPointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => JSBorrowedCharPointer = this.module.cwrap(\"QTS_GetString\", \"number\", [\"number\", \"number\"])\n\n QTS_GetArrayBuffer: (\n ctx: JSContextPointer,\n data: JSValuePointer | JSValueConstPointer,\n ) => JSVoidPointer = this.module.cwrap(\"QTS_GetArrayBuffer\", \"number\", [\"number\", \"number\"])\n\n QTS_GetArrayBufferLength: (\n ctx: JSContextPointer,\n data: JSValuePointer | JSValueConstPointer,\n ) => number = this.module.cwrap(\"QTS_GetArrayBufferLength\", \"number\", [\"number\", \"number\"])\n\n QTS_NewSymbol: (\n ctx: JSContextPointer,\n description: BorrowedHeapCharPointer,\n isGlobal: number,\n ) => JSValuePointer = this.module.cwrap(\"QTS_NewSymbol\", \"number\", [\"number\", \"number\", \"number\"])\n\n QTS_GetSymbolDescriptionOrKey: (\n ctx: JSContextPointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => JSBorrowedCharPointer = assertSync(\n this.module.cwrap(\"QTS_GetSymbolDescriptionOrKey\", \"number\", [\"number\", \"number\"]),\n )\n\n QTS_GetSymbolDescriptionOrKey_MaybeAsync: (\n ctx: JSContextPointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => JSBorrowedCharPointer | Promise<JSBorrowedCharPointer> = this.module.cwrap(\n \"QTS_GetSymbolDescriptionOrKey\",\n \"number\",\n [\"number\", \"number\"],\n )\n\n QTS_IsGlobalSymbol: (\n ctx: JSContextPointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => number = this.module.cwrap(\"QTS_IsGlobalSymbol\", \"number\", [\"number\", \"number\"])\n\n QTS_IsJobPending: (rt: JSRuntimePointer) => number = this.module.cwrap(\n \"QTS_IsJobPending\",\n \"number\",\n [\"number\"],\n )\n\n QTS_ExecutePendingJob: (\n rt: JSRuntimePointer,\n maxJobsToExecute: number,\n lastJobContext: JSContextPointerPointer,\n ) => JSValuePointer = assertSync(\n this.module.cwrap(\"QTS_ExecutePendingJob\", \"number\", [\"number\", \"number\", \"number\"]),\n )\n\n QTS_ExecutePendingJob_MaybeAsync: (\n rt: JSRuntimePointer,\n maxJobsToExecute: number,\n lastJobContext: JSContextPointerPointer,\n ) => JSValuePointer | Promise<JSValuePointer> = this.module.cwrap(\n \"QTS_ExecutePendingJob\",\n \"number\",\n [\"number\", \"number\", \"number\"],\n )\n\n QTS_GetProp: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = assertSync(\n this.module.cwrap(\"QTS_GetProp\", \"number\", [\"number\", \"number\", \"number\"]),\n )\n\n QTS_GetProp_MaybeAsync: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer | Promise<JSValuePointer> = this.module.cwrap(\"QTS_GetProp\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n ])\n\n QTS_GetPropNumber: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: number,\n ) => JSValuePointer = assertSync(\n this.module.cwrap(\"QTS_GetPropNumber\", \"number\", [\"number\", \"number\", \"number\"]),\n )\n\n QTS_GetPropNumber_MaybeAsync: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: number,\n ) => JSValuePointer | Promise<JSValuePointer> = this.module.cwrap(\"QTS_GetPropNumber\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n ])\n\n QTS_SetProp: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: JSValuePointer | JSValueConstPointer,\n prop_value: JSValuePointer | JSValueConstPointer,\n ) => void = assertSync(\n this.module.cwrap(\"QTS_SetProp\", null, [\"number\", \"number\", \"number\", \"number\"]),\n )\n\n QTS_SetProp_MaybeAsync: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: JSValuePointer | JSValueConstPointer,\n prop_value: JSValuePointer | JSValueConstPointer,\n ) => void | Promise<void> = this.module.cwrap(\"QTS_SetProp\", null, [\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n ])\n\n QTS_DefineProp: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: JSValuePointer | JSValueConstPointer,\n prop_value: JSValuePointer | JSValueConstPointer,\n get: JSValuePointer | JSValueConstPointer,\n set: JSValuePointer | JSValueConstPointer,\n configurable: boolean,\n enumerable: boolean,\n has_value: boolean,\n ) => void = this.module.cwrap(\"QTS_DefineProp\", null, [\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n \"boolean\",\n \"boolean\",\n \"boolean\",\n ])\n\n QTS_GetOwnPropertyNames: (\n ctx: JSContextPointer,\n out_ptrs: JSValuePointerPointerPointer,\n out_len: UInt32Pointer,\n obj: JSValuePointer | JSValueConstPointer,\n flags: number,\n ) => JSValuePointer = assertSync(\n this.module.cwrap(\"QTS_GetOwnPropertyNames\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n ]),\n )\n\n QTS_GetOwnPropertyNames_MaybeAsync: (\n ctx: JSContextPointer,\n out_ptrs: JSValuePointerPointerPointer,\n out_len: UInt32Pointer,\n obj: JSValuePointer | JSValueConstPointer,\n flags: number,\n ) => JSValuePointer | Promise<JSValuePointer> = this.module.cwrap(\n \"QTS_GetOwnPropertyNames\",\n \"number\",\n [\"number\", \"number\", \"number\", \"number\", \"number\"],\n )\n\n QTS_Call: (\n ctx: JSContextPointer,\n func_obj: JSValuePointer | JSValueConstPointer,\n this_obj: JSValuePointer | JSValueConstPointer,\n argc: number,\n argv_ptrs: JSValueConstPointerPointer,\n ) => JSValuePointer = assertSync(\n this.module.cwrap(\"QTS_Call\", \"number\", [\"number\", \"number\", \"number\", \"number\", \"number\"]),\n )\n\n QTS_Call_MaybeAsync: (\n ctx: JSContextPointer,\n func_obj: JSValuePointer | JSValueConstPointer,\n this_obj: JSValuePointer | JSValueConstPointer,\n argc: number,\n argv_ptrs: JSValueConstPointerPointer,\n ) => JSValuePointer | Promise<JSValuePointer> = this.module.cwrap(\"QTS_Call\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n ])\n\n QTS_ResolveException: (ctx: JSContextPointer, maybe_exception: JSValuePointer) => JSValuePointer =\n this.module.cwrap(\"QTS_ResolveException\", \"number\", [\"number\", \"number\"])\n\n QTS_GetException: (ctx: JSContextPointer) => JSValuePointer = this.module.cwrap(\n \"QTS_GetException\",\n \"number\",\n [\"number\"],\n )\n\n QTS_Dump: (\n ctx: JSContextPointer,\n obj: JSValuePointer | JSValueConstPointer,\n ) => JSBorrowedCharPointer = assertSync(\n this.module.cwrap(\"QTS_Dump\", \"number\", [\"number\", \"number\"]),\n )\n\n QTS_Dump_MaybeAsync: (\n ctx: JSContextPointer,\n obj: JSValuePointer | JSValueConstPointer,\n ) => JSBorrowedCharPointer | Promise<JSBorrowedCharPointer> = this.module.cwrap(\n \"QTS_Dump\",\n \"number\",\n [\"number\", \"number\"],\n )\n\n QTS_Eval: (\n ctx: JSContextPointer,\n js_code: BorrowedHeapCharPointer,\n js_code_length: number,\n filename: string,\n detectModule: EvalDetectModule,\n evalFlags: EvalFlags,\n ) => JSValuePointer = assertSync(\n this.module.cwrap(\"QTS_Eval\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n \"string\",\n \"number\",\n \"number\",\n ]),\n )\n\n QTS_Eval_MaybeAsync: (\n ctx: JSContextPointer,\n js_code: BorrowedHeapCharPointer,\n js_code_length: number,\n filename: string,\n detectModule: EvalDetectModule,\n evalFlags: EvalFlags,\n ) => JSValuePointer | Promise<JSValuePointer> = this.module.cwrap(\"QTS_Eval\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n \"string\",\n \"number\",\n \"number\",\n ])\n\n QTS_GetModuleNamespace: (\n ctx: JSContextPointer,\n module_func_obj: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_GetModuleNamespace\", \"number\", [\"number\", \"number\"])\n\n QTS_Typeof: (\n ctx: JSContextPointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => OwnedHeapCharPointer = this.module.cwrap(\"QTS_Typeof\", \"number\", [\"number\", \"number\"])\n\n QTS_GetLength: (\n ctx: JSContextPointer,\n out_len: UInt32Pointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => number = this.module.cwrap(\"QTS_GetLength\", \"number\", [\"number\", \"number\", \"number\"])\n\n QTS_IsEqual: (\n ctx: JSContextPointer,\n a: JSValuePointer | JSValueConstPointer,\n b: JSValuePointer | JSValueConstPointer,\n op: IsEqualOp,\n ) => number = this.module.cwrap(\"QTS_IsEqual\", \"number\", [\"number\", \"number\", \"number\", \"number\"])\n\n QTS_GetGlobalObject: (ctx: JSContextPointer) => JSValuePointer = this.module.cwrap(\n \"QTS_GetGlobalObject\",\n \"number\",\n [\"number\"],\n )\n\n QTS_NewPromiseCapability: (\n ctx: JSContextPointer,\n resolve_funcs_out: JSValuePointerPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_NewPromiseCapability\", \"number\", [\n \"number\",\n \"number\",\n ])\n\n QTS_PromiseState: (\n ctx: JSContextPointer,\n promise: JSValuePointer | JSValueConstPointer,\n ) => JSPromiseStateEnum = this.module.cwrap(\"QTS_PromiseState\", \"number\", [\"number\", \"number\"])\n\n QTS_PromiseResult: (\n ctx: JSContextPointer,\n promise: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_PromiseResult\", \"number\", [\"number\", \"number\"])\n\n QTS_TestStringArg: (string: string) => void = this.module.cwrap(\"QTS_TestStringArg\", null, [\n \"string\",\n ])\n\n QTS_GetDebugLogEnabled: (rt: JSRuntimePointer) => number = this.module.cwrap(\n \"QTS_GetDebugLogEnabled\",\n \"number\",\n [\"number\"],\n )\n\n QTS_SetDebugLogEnabled: (rt: JSRuntimePointer, is_enabled: number) => void = this.module.cwrap(\n \"QTS_SetDebugLogEnabled\",\n null,\n [\"number\", \"number\"],\n )\n\n QTS_BuildIsDebug: () => number = this.module.cwrap(\"QTS_BuildIsDebug\", \"number\", [])\n\n QTS_BuildIsAsyncify: () => number = this.module.cwrap(\"QTS_BuildIsAsyncify\", \"number\", [])\n\n QTS_NewFunction: (ctx: JSContextPointer, func_id: number, name: string) => JSValuePointer =\n this.module.cwrap(\"QTS_NewFunction\", \"number\", [\"number\", \"number\", \"string\"])\n\n QTS_ArgvGetJSValueConstPointer: (\n argv: JSValuePointer | JSValueConstPointer,\n index: number,\n ) => JSValueConstPointer = this.module.cwrap(\"QTS_ArgvGetJSValueConstPointer\", \"number\", [\n \"number\",\n \"number\",\n ])\n\n QTS_RuntimeEnableInterruptHandler: (rt: JSRuntimePointer) => void = this.module.cwrap(\n \"QTS_RuntimeEnableInterruptHandler\",\n null,\n [\"number\"],\n )\n\n QTS_RuntimeDisableInterruptHandler: (rt: JSRuntimePointer) => void = this.module.cwrap(\n \"QTS_RuntimeDisableInterruptHandler\",\n null,\n [\"number\"],\n )\n\n QTS_RuntimeEnableModuleLoader: (rt: JSRuntimePointer, use_custom_normalize: number) => void =\n this.module.cwrap(\"QTS_RuntimeEnableModuleLoader\", null, [\"number\", \"number\"])\n\n QTS_RuntimeDisableModuleLoader: (rt: JSRuntimePointer) => void = this.module.cwrap(\n \"QTS_RuntimeDisableModuleLoader\",\n null,\n [\"number\"],\n )\n\n QTS_bjson_encode: (\n ctx: JSContextPointer,\n val: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_bjson_encode\", \"number\", [\"number\", \"number\"])\n\n QTS_bjson_decode: (\n ctx: JSContextPointer,\n data: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_bjson_decode\", \"number\", [\"number\", \"number\"])\n\n QTS_EvalFunction: (\n ctx: JSContextPointer,\n fun_obj: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = assertSync(\n this.module.cwrap(\"QTS_EvalFunction\", \"number\", [\"number\", \"number\"]),\n )\n\n QTS_EvalFunction_MaybeAsync: (\n ctx: JSContextPointer,\n fun_obj: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer | Promise<JSValuePointer> = this.module.cwrap(\"QTS_EvalFunction\", \"number\", [\n \"number\",\n \"number\",\n ])\n\n QTS_EncodeBytecode: (\n ctx: JSContextPointer,\n val: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_EncodeBytecode\", \"number\", [\"number\", \"number\"])\n\n QTS_DecodeBytecode: (\n ctx: JSContextPointer,\n data: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_DecodeBytecode\", \"number\", [\"number\", \"number\"])\n\n QTS_ResolveModule: (ctx: JSContextPointer, obj: JSValuePointer | JSValueConstPointer) => number =\n this.module.cwrap(\"QTS_ResolveModule\", \"number\", [\"number\", \"number\"])\n}\n","import type { QuickJSAsyncVariant } from \"@componentor/quickjs-ffi-types\"\n\n/**\n * ### @componentor/quickjs-wasmfs-release-sync\n *\n * QuickJS variant with WasmFS and OPFS support for native filesystem access\n * in browsers. Uses ASYNCIFY for non-blocking OPFS backend creation.\n *\n * | Variable | Setting | Description |\n * | -- | -- | -- |\n * | library | quickjs | The original [bellard/quickjs](https://github.com/bellard/quickjs) library. |\n * | releaseMode | release | Optimized for performance. |\n * | syncMode | asyncify | Uses ASYNCIFY for OPFS backend (required for non-blocking OPFS operations). |\n * | emscriptenInclusion | wasm | Has a separate .wasm file with WasmFS + OPFS support. |\n * | exports | browser | Browser-only (OPFS is a browser API) |\n *\n */\nconst variant: QuickJSAsyncVariant = {\n type: \"async\",\n importFFI: () => import(\"./ffi.js\").then((mod) => mod.QuickJSAsyncFFI),\n importModuleLoader: () =>\n import(\"@componentor/quickjs-wasmfs-release-sync/emscripten-module\").then((mod) => mod.default),\n} as const\n\nexport default variant\n"],"mappings":"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","names":["module"]}
|
|
1
|
+
{"version":3,"sources":["../src/ffi.ts","../src/index.ts"],"sourcesContent":["// This file generated by \"generate.ts ffi\" in the root of the repo.\nimport {\n QuickJSEmscriptenModule,\n JSRuntimePointer,\n JSContextPointer,\n JSContextPointerPointer,\n JSModuleDefPointer,\n JSValuePointer,\n JSValueConstPointer,\n JSValuePointerPointer,\n JSValuePointerPointerPointer,\n JSValueConstPointerPointer,\n QTS_C_To_HostCallbackFuncPointer,\n QTS_C_To_HostInterruptFuncPointer,\n QTS_C_To_HostLoadModuleFuncPointer,\n BorrowedHeapCharPointer,\n OwnedHeapCharPointer,\n JSBorrowedCharPointer,\n JSVoidPointer,\n UInt32Pointer,\n EvalFlags,\n IntrinsicsFlags,\n EvalDetectModule,\n GetOwnPropertyNamesFlags,\n IsEqualOp,\n JSPromiseStateEnum,\n} from \"@componentor/quickjs-ffi-types\"\n\n/**\n * Low-level FFI bindings to QuickJS's Emscripten module.\n * See instead {@link QuickJSContext}, the public Javascript interface exposed by this\n * library.\n *\n * @unstable The FFI interface is considered private and may change.\n */\nexport class QuickJSFFI {\n constructor(private module: QuickJSEmscriptenModule) {}\n /** Set at compile time. */\n readonly DEBUG = false\n\n QTS_Throw: (\n ctx: JSContextPointer,\n error: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_Throw\", \"number\", [\"number\", \"number\"])\n\n QTS_NewError: (ctx: JSContextPointer) => JSValuePointer = this.module.cwrap(\n \"QTS_NewError\",\n \"number\",\n [\"number\"],\n )\n\n QTS_RuntimeSetMemoryLimit: (rt: JSRuntimePointer, limit: number) => void = this.module.cwrap(\n \"QTS_RuntimeSetMemoryLimit\",\n null,\n [\"number\", \"number\"],\n )\n\n QTS_RuntimeComputeMemoryUsage: (rt: JSRuntimePointer, ctx: JSContextPointer) => JSValuePointer =\n this.module.cwrap(\"QTS_RuntimeComputeMemoryUsage\", \"number\", [\"number\", \"number\"])\n\n QTS_RuntimeDumpMemoryUsage: (rt: JSRuntimePointer) => OwnedHeapCharPointer = this.module.cwrap(\n \"QTS_RuntimeDumpMemoryUsage\",\n \"number\",\n [\"number\"],\n )\n\n QTS_RecoverableLeakCheck: () => number = this.module.cwrap(\n \"QTS_RecoverableLeakCheck\",\n \"number\",\n [],\n )\n\n QTS_BuildIsSanitizeLeak: () => number = this.module.cwrap(\"QTS_BuildIsSanitizeLeak\", \"number\", [])\n\n QTS_RuntimeSetMaxStackSize: (rt: JSRuntimePointer, stack_size: number) => void =\n this.module.cwrap(\"QTS_RuntimeSetMaxStackSize\", null, [\"number\", \"number\"])\n\n QTS_GetUndefined: () => JSValueConstPointer = this.module.cwrap(\"QTS_GetUndefined\", \"number\", [])\n\n QTS_GetNull: () => JSValueConstPointer = this.module.cwrap(\"QTS_GetNull\", \"number\", [])\n\n QTS_GetFalse: () => JSValueConstPointer = this.module.cwrap(\"QTS_GetFalse\", \"number\", [])\n\n QTS_GetTrue: () => JSValueConstPointer = this.module.cwrap(\"QTS_GetTrue\", \"number\", [])\n\n QTS_NewRuntime: () => JSRuntimePointer = this.module.cwrap(\"QTS_NewRuntime\", \"number\", [])\n\n QTS_FreeRuntime: (rt: JSRuntimePointer) => void = this.module.cwrap(\"QTS_FreeRuntime\", null, [\n \"number\",\n ])\n\n QTS_NewContext: (rt: JSRuntimePointer, intrinsics: IntrinsicsFlags) => JSContextPointer =\n this.module.cwrap(\"QTS_NewContext\", \"number\", [\"number\", \"number\"])\n\n QTS_FreeContext: (ctx: JSContextPointer) => void = this.module.cwrap(\"QTS_FreeContext\", null, [\n \"number\",\n ])\n\n QTS_FreeValuePointer: (ctx: JSContextPointer, value: JSValuePointer) => void = this.module.cwrap(\n \"QTS_FreeValuePointer\",\n null,\n [\"number\", \"number\"],\n )\n\n QTS_FreeValuePointerRuntime: (rt: JSRuntimePointer, value: JSValuePointer) => void =\n this.module.cwrap(\"QTS_FreeValuePointerRuntime\", null, [\"number\", \"number\"])\n\n QTS_FreeVoidPointer: (ctx: JSContextPointer, ptr: JSVoidPointer) => void = this.module.cwrap(\n \"QTS_FreeVoidPointer\",\n null,\n [\"number\", \"number\"],\n )\n\n QTS_FreeCString: (ctx: JSContextPointer, str: JSBorrowedCharPointer) => void = this.module.cwrap(\n \"QTS_FreeCString\",\n null,\n [\"number\", \"number\"],\n )\n\n QTS_DupValuePointer: (\n ctx: JSContextPointer,\n val: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_DupValuePointer\", \"number\", [\"number\", \"number\"])\n\n QTS_NewObject: (ctx: JSContextPointer) => JSValuePointer = this.module.cwrap(\n \"QTS_NewObject\",\n \"number\",\n [\"number\"],\n )\n\n QTS_NewObjectProto: (\n ctx: JSContextPointer,\n proto: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_NewObjectProto\", \"number\", [\"number\", \"number\"])\n\n QTS_NewArray: (ctx: JSContextPointer) => JSValuePointer = this.module.cwrap(\n \"QTS_NewArray\",\n \"number\",\n [\"number\"],\n )\n\n QTS_NewArrayBuffer: (\n ctx: JSContextPointer,\n buffer: JSVoidPointer,\n length: number,\n ) => JSValuePointer = this.module.cwrap(\"QTS_NewArrayBuffer\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n ])\n\n QTS_NewFloat64: (ctx: JSContextPointer, num: number) => JSValuePointer = this.module.cwrap(\n \"QTS_NewFloat64\",\n \"number\",\n [\"number\", \"number\"],\n )\n\n QTS_GetFloat64: (ctx: JSContextPointer, value: JSValuePointer | JSValueConstPointer) => number =\n this.module.cwrap(\"QTS_GetFloat64\", \"number\", [\"number\", \"number\"])\n\n QTS_NewString: (ctx: JSContextPointer, string: BorrowedHeapCharPointer) => JSValuePointer =\n this.module.cwrap(\"QTS_NewString\", \"number\", [\"number\", \"number\"])\n\n QTS_GetString: (\n ctx: JSContextPointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => JSBorrowedCharPointer = this.module.cwrap(\"QTS_GetString\", \"number\", [\"number\", \"number\"])\n\n QTS_GetArrayBuffer: (\n ctx: JSContextPointer,\n data: JSValuePointer | JSValueConstPointer,\n ) => JSVoidPointer = this.module.cwrap(\"QTS_GetArrayBuffer\", \"number\", [\"number\", \"number\"])\n\n QTS_GetArrayBufferLength: (\n ctx: JSContextPointer,\n data: JSValuePointer | JSValueConstPointer,\n ) => number = this.module.cwrap(\"QTS_GetArrayBufferLength\", \"number\", [\"number\", \"number\"])\n\n QTS_NewSymbol: (\n ctx: JSContextPointer,\n description: BorrowedHeapCharPointer,\n isGlobal: number,\n ) => JSValuePointer = this.module.cwrap(\"QTS_NewSymbol\", \"number\", [\"number\", \"number\", \"number\"])\n\n QTS_GetSymbolDescriptionOrKey: (\n ctx: JSContextPointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => JSBorrowedCharPointer = this.module.cwrap(\"QTS_GetSymbolDescriptionOrKey\", \"number\", [\n \"number\",\n \"number\",\n ])\n\n QTS_IsGlobalSymbol: (\n ctx: JSContextPointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => number = this.module.cwrap(\"QTS_IsGlobalSymbol\", \"number\", [\"number\", \"number\"])\n\n QTS_IsJobPending: (rt: JSRuntimePointer) => number = this.module.cwrap(\n \"QTS_IsJobPending\",\n \"number\",\n [\"number\"],\n )\n\n QTS_ExecutePendingJob: (\n rt: JSRuntimePointer,\n maxJobsToExecute: number,\n lastJobContext: JSContextPointerPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_ExecutePendingJob\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n ])\n\n QTS_GetProp: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_GetProp\", \"number\", [\"number\", \"number\", \"number\"])\n\n QTS_GetPropNumber: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: number,\n ) => JSValuePointer = this.module.cwrap(\"QTS_GetPropNumber\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n ])\n\n QTS_SetProp: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: JSValuePointer | JSValueConstPointer,\n prop_value: JSValuePointer | JSValueConstPointer,\n ) => void = this.module.cwrap(\"QTS_SetProp\", null, [\"number\", \"number\", \"number\", \"number\"])\n\n QTS_DefineProp: (\n ctx: JSContextPointer,\n this_val: JSValuePointer | JSValueConstPointer,\n prop_name: JSValuePointer | JSValueConstPointer,\n prop_value: JSValuePointer | JSValueConstPointer,\n get: JSValuePointer | JSValueConstPointer,\n set: JSValuePointer | JSValueConstPointer,\n configurable: boolean,\n enumerable: boolean,\n has_value: boolean,\n ) => void = this.module.cwrap(\"QTS_DefineProp\", null, [\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n \"boolean\",\n \"boolean\",\n \"boolean\",\n ])\n\n QTS_GetOwnPropertyNames: (\n ctx: JSContextPointer,\n out_ptrs: JSValuePointerPointerPointer,\n out_len: UInt32Pointer,\n obj: JSValuePointer | JSValueConstPointer,\n flags: number,\n ) => JSValuePointer = this.module.cwrap(\"QTS_GetOwnPropertyNames\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n ])\n\n QTS_Call: (\n ctx: JSContextPointer,\n func_obj: JSValuePointer | JSValueConstPointer,\n this_obj: JSValuePointer | JSValueConstPointer,\n argc: number,\n argv_ptrs: JSValueConstPointerPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_Call\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n \"number\",\n ])\n\n QTS_ResolveException: (ctx: JSContextPointer, maybe_exception: JSValuePointer) => JSValuePointer =\n this.module.cwrap(\"QTS_ResolveException\", \"number\", [\"number\", \"number\"])\n\n QTS_GetException: (ctx: JSContextPointer) => JSValuePointer = this.module.cwrap(\n \"QTS_GetException\",\n \"number\",\n [\"number\"],\n )\n\n QTS_Dump: (\n ctx: JSContextPointer,\n obj: JSValuePointer | JSValueConstPointer,\n ) => JSBorrowedCharPointer = this.module.cwrap(\"QTS_Dump\", \"number\", [\"number\", \"number\"])\n\n QTS_Eval: (\n ctx: JSContextPointer,\n js_code: BorrowedHeapCharPointer,\n js_code_length: number,\n filename: string,\n detectModule: EvalDetectModule,\n evalFlags: EvalFlags,\n ) => JSValuePointer = this.module.cwrap(\"QTS_Eval\", \"number\", [\n \"number\",\n \"number\",\n \"number\",\n \"string\",\n \"number\",\n \"number\",\n ])\n\n QTS_GetModuleNamespace: (\n ctx: JSContextPointer,\n module_func_obj: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_GetModuleNamespace\", \"number\", [\"number\", \"number\"])\n\n QTS_Typeof: (\n ctx: JSContextPointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => OwnedHeapCharPointer = this.module.cwrap(\"QTS_Typeof\", \"number\", [\"number\", \"number\"])\n\n QTS_GetLength: (\n ctx: JSContextPointer,\n out_len: UInt32Pointer,\n value: JSValuePointer | JSValueConstPointer,\n ) => number = this.module.cwrap(\"QTS_GetLength\", \"number\", [\"number\", \"number\", \"number\"])\n\n QTS_IsEqual: (\n ctx: JSContextPointer,\n a: JSValuePointer | JSValueConstPointer,\n b: JSValuePointer | JSValueConstPointer,\n op: IsEqualOp,\n ) => number = this.module.cwrap(\"QTS_IsEqual\", \"number\", [\"number\", \"number\", \"number\", \"number\"])\n\n QTS_GetGlobalObject: (ctx: JSContextPointer) => JSValuePointer = this.module.cwrap(\n \"QTS_GetGlobalObject\",\n \"number\",\n [\"number\"],\n )\n\n QTS_NewPromiseCapability: (\n ctx: JSContextPointer,\n resolve_funcs_out: JSValuePointerPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_NewPromiseCapability\", \"number\", [\n \"number\",\n \"number\",\n ])\n\n QTS_PromiseState: (\n ctx: JSContextPointer,\n promise: JSValuePointer | JSValueConstPointer,\n ) => JSPromiseStateEnum = this.module.cwrap(\"QTS_PromiseState\", \"number\", [\"number\", \"number\"])\n\n QTS_PromiseResult: (\n ctx: JSContextPointer,\n promise: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_PromiseResult\", \"number\", [\"number\", \"number\"])\n\n QTS_TestStringArg: (string: string) => void = this.module.cwrap(\"QTS_TestStringArg\", null, [\n \"string\",\n ])\n\n QTS_GetDebugLogEnabled: (rt: JSRuntimePointer) => number = this.module.cwrap(\n \"QTS_GetDebugLogEnabled\",\n \"number\",\n [\"number\"],\n )\n\n QTS_SetDebugLogEnabled: (rt: JSRuntimePointer, is_enabled: number) => void = this.module.cwrap(\n \"QTS_SetDebugLogEnabled\",\n null,\n [\"number\", \"number\"],\n )\n\n QTS_BuildIsDebug: () => number = this.module.cwrap(\"QTS_BuildIsDebug\", \"number\", [])\n\n QTS_BuildIsAsyncify: () => number = this.module.cwrap(\"QTS_BuildIsAsyncify\", \"number\", [])\n\n QTS_NewFunction: (ctx: JSContextPointer, func_id: number, name: string) => JSValuePointer =\n this.module.cwrap(\"QTS_NewFunction\", \"number\", [\"number\", \"number\", \"string\"])\n\n QTS_ArgvGetJSValueConstPointer: (\n argv: JSValuePointer | JSValueConstPointer,\n index: number,\n ) => JSValueConstPointer = this.module.cwrap(\"QTS_ArgvGetJSValueConstPointer\", \"number\", [\n \"number\",\n \"number\",\n ])\n\n QTS_RuntimeEnableInterruptHandler: (rt: JSRuntimePointer) => void = this.module.cwrap(\n \"QTS_RuntimeEnableInterruptHandler\",\n null,\n [\"number\"],\n )\n\n QTS_RuntimeDisableInterruptHandler: (rt: JSRuntimePointer) => void = this.module.cwrap(\n \"QTS_RuntimeDisableInterruptHandler\",\n null,\n [\"number\"],\n )\n\n QTS_RuntimeEnableModuleLoader: (rt: JSRuntimePointer, use_custom_normalize: number) => void =\n this.module.cwrap(\"QTS_RuntimeEnableModuleLoader\", null, [\"number\", \"number\"])\n\n QTS_RuntimeDisableModuleLoader: (rt: JSRuntimePointer) => void = this.module.cwrap(\n \"QTS_RuntimeDisableModuleLoader\",\n null,\n [\"number\"],\n )\n\n QTS_bjson_encode: (\n ctx: JSContextPointer,\n val: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_bjson_encode\", \"number\", [\"number\", \"number\"])\n\n QTS_bjson_decode: (\n ctx: JSContextPointer,\n data: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_bjson_decode\", \"number\", [\"number\", \"number\"])\n\n QTS_EvalFunction: (\n ctx: JSContextPointer,\n fun_obj: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_EvalFunction\", \"number\", [\"number\", \"number\"])\n\n QTS_EncodeBytecode: (\n ctx: JSContextPointer,\n val: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_EncodeBytecode\", \"number\", [\"number\", \"number\"])\n\n QTS_DecodeBytecode: (\n ctx: JSContextPointer,\n data: JSValuePointer | JSValueConstPointer,\n ) => JSValuePointer = this.module.cwrap(\"QTS_DecodeBytecode\", \"number\", [\"number\", \"number\"])\n\n QTS_ResolveModule: (ctx: JSContextPointer, obj: JSValuePointer | JSValueConstPointer) => number =\n this.module.cwrap(\"QTS_ResolveModule\", \"number\", [\"number\", \"number\"])\n}\n","import type { QuickJSSyncVariant } from \"@componentor/quickjs-ffi-types\"\n\n/**\n * ### @componentor/quickjs-wasmfs-release-sync\n *\n * QuickJS variant with WasmFS and OPFS support for native filesystem access\n * in browsers. Uses pthreads for non-blocking OPFS backend operations.\n *\n * | Variable | Setting | Description |\n * | -- | -- | -- |\n * | library | quickjs | The original [bellard/quickjs](https://github.com/bellard/quickjs) library. |\n * | releaseMode | release | Optimized for performance. |\n * | syncMode | sync | Uses pthreads for OPFS backend (worker thread handles async OPFS). |\n * | emscriptenInclusion | wasm | Has a separate .wasm file with WasmFS + OPFS support. |\n * | exports | browser | Browser-only (OPFS is a browser API) |\n *\n */\nconst variant: QuickJSSyncVariant = {\n type: \"sync\",\n importFFI: () => import(\"./ffi.js\").then((mod) => mod.QuickJSFFI),\n importModuleLoader: () =>\n import(\"@componentor/quickjs-wasmfs-release-sync/emscripten-module\").then((mod) => mod.default),\n} as const\n\nexport default variant\n"],"mappings":"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","names":["module"]}
|
package/dist/index.mjs
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
var variant={type:"
|
|
1
|
+
var variant={type:"sync",importFFI:()=>import("./ffi.mjs").then(mod=>mod.QuickJSFFI),importModuleLoader:()=>import("@componentor/quickjs-wasmfs-release-sync/emscripten-module").then(mod=>mod.default)},index_default=variant;export{index_default as default};
|
|
2
2
|
//# sourceMappingURL=index.mjs.map
|
package/dist/index.mjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type {
|
|
1
|
+
{"version":3,"sources":["../src/index.ts"],"sourcesContent":["import type { QuickJSSyncVariant } from \"@componentor/quickjs-ffi-types\"\n\n/**\n * ### @componentor/quickjs-wasmfs-release-sync\n *\n * QuickJS variant with WasmFS and OPFS support for native filesystem access\n * in browsers. Uses pthreads for non-blocking OPFS backend operations.\n *\n * | Variable | Setting | Description |\n * | -- | -- | -- |\n * | library | quickjs | The original [bellard/quickjs](https://github.com/bellard/quickjs) library. |\n * | releaseMode | release | Optimized for performance. |\n * | syncMode | sync | Uses pthreads for OPFS backend (worker thread handles async OPFS). |\n * | emscriptenInclusion | wasm | Has a separate .wasm file with WasmFS + OPFS support. |\n * | exports | browser | Browser-only (OPFS is a browser API) |\n *\n */\nconst variant: QuickJSSyncVariant = {\n type: \"sync\",\n importFFI: () => import(\"./ffi.js\").then((mod) => mod.QuickJSFFI),\n importModuleLoader: () =>\n import(\"@componentor/quickjs-wasmfs-release-sync/emscripten-module\").then((mod) => mod.default),\n} as const\n\nexport default variant\n"],"mappings":"AAiBA,IAAM,QAA8B,CAClC,KAAM,OACN,UAAW,IAAM,OAAO,WAAU,EAAE,KAAM,KAAQ,IAAI,UAAU,EAChE,mBAAoB,IAClB,OAAO,4DAA4D,EAAE,KAAM,KAAQ,IAAI,OAAO,CAClG,EAEO,cAAQ","names":[]}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
|
|
2
|
+
var QuickJSRaw = (() => {
|
|
3
|
+
var _scriptName = import.meta.url;
|
|
4
|
+
|
|
5
|
+
return (
|
|
6
|
+
function(moduleArg = {}) {
|
|
7
|
+
var moduleRtn;
|
|
8
|
+
|
|
9
|
+
function d(){h.buffer!=m.buffer&&p();return m}function r(){h.buffer!=m.buffer&&p();return aa}function u(){h.buffer!=m.buffer&&p();return ba}function v(){h.buffer!=m.buffer&&p();return ca}function da(){h.buffer!=m.buffer&&p();return ea}var x=moduleArg,fa,ha,ia=new Promise((a,b)=>{fa=a;ha=b}),ja="object"==typeof window,ka="function"==typeof importScripts,la="object"==typeof process&&"object"==typeof process.td&&"string"==typeof process.td.node,y=ka&&"em-pthread"==self.name;
|
|
10
|
+
function ma(a){a={log:a||function(){}};for(const b of ma.ad)b(a);return x.quickJSEmscriptenExtensions=a}ma.ad=[];x.quickjsEmscriptenInit=ma;ma.ad.push(a=>{a.getWasmMemory=function(){return h}});
|
|
11
|
+
if("undefined"!==typeof navigator&&navigator.storage&&navigator.storage.getDirectory){var na=x.onRuntimeInitialized;x.onRuntimeInitialized=function(){x._wasmfsOPFSMounted?console.log("[WasmFS] OPFS mounted at",x._wasmfsOPFSMountPath||"/root","(via C)"):console.log("[WasmFS] OPFS mount status unknown - may have been done by C code");try{if("undefined"!==typeof x.FS){var a=x.FS.stat("/root");console.log("[WasmFS] /root directory exists, mode:",a.mode)}}catch(b){console.log("[WasmFS] Note: /root not yet accessible:",
|
|
12
|
+
b.message)}na&&na()}}
|
|
13
|
+
x.mountOPFS=async function(a,b){"undefined"===typeof a&&(a="/opfs");"undefined"===typeof b&&(b=null);if(!navigator.storage||!navigator.storage.getDirectory)throw Error("OPFS is not supported in this browser");var c=await navigator.storage.getDirectory();if(b&&"/"!==b&&""!==b)for(var e=b.split("/").filter(Boolean),f=0;f<e.length;f++)c=await c.getDirectoryHandle(e[f],{create:!0});if("function"===typeof x.wasmfsOPFSGetOrCreateDir){if(c=await x.wasmfsOPFSGetOrCreateDir(c,a),0!==c&&void 0!==c)throw Error("wasmfsOPFSGetOrCreateDir returned error: "+
|
|
14
|
+
c);}else throw Error("wasmfsOPFSGetOrCreateDir not available - module may not be initialized");console.log("[WasmFS] OPFS mounted at",a,b?"(OPFS path: "+b+")":"");return a};
|
|
15
|
+
x.watchFiles=function(a,b,c){"undefined"===typeof c&&(c=100);for(var e=new Map,f=0;f<a.length;f++)try{var g=x.FS.stat(a[f]);e.set(a[f],g.Pc.getTime())}catch(l){e.set(a[f],0)}var k=setInterval(function(){for(var l=0;l<a.length;l++){var n=a[l];try{var q=x.FS.stat(n).Pc.getTime(),t=e.get(n);q!==t&&(e.set(n,q),0!==t&&b(n,"change"))}catch(w){t=e.get(n),0!==t&&(e.set(n,0),b(n,"delete"))}}},c);return{close:function(){clearInterval(k)},addPath:function(l){if(-1===a.indexOf(l)){a.push(l);try{var n=x.FS.stat(l);
|
|
16
|
+
e.set(l,n.Pc.getTime())}catch(q){e.set(l,0)}}},de:function(l){var n=a.indexOf(l);-1!==n&&(a.splice(n,1),e.delete(l))}}};
|
|
17
|
+
x.watchDirectory=function(a,b,c){function e(n){var q=[];try{for(var t=x.readdir(n),w=0;w<t.length;w++){var D=t[w];if("."!==D&&".."!==D){var F=n+"/"+D;try{var J=x.FS.stat(F);if(J.isDirectory()){var ta=e(F);for(F=0;F<ta.length;F++)q.push(ta[F])}else q.push({path:F,Pc:J.Pc.getTime()})}catch(Xc){}}}}catch(Xc){}return q}"undefined"===typeof c&&(c=100);for(var f=new Map,g=e(a),k=0;k<g.length;k++)f.set(g[k].path,g[k].Pc);var l=setInterval(function(){for(var n=e(a),q=new Set,t=0;t<n.length;t++){var w=n[t];
|
|
18
|
+
q.add(w.path);var D=f.get(w.path);void 0===D?(f.set(w.path,w.Pc),b(w.path,"add")):w.Pc!==D&&(f.set(w.path,w.Pc),b(w.path,"change"))}f.forEach(function(F,J){q.has(J)||(f.delete(J),b(J,"delete"))})},c);return{close:function(){clearInterval(l)}}};x.readFile=function(a){return x.FS.readFile(a)};x.readFileString=function(a){a=x.FS.readFile(a);return(new TextDecoder).decode(a)};x.writeFile=function(a,b){x.FS.writeFile(a,b)};
|
|
19
|
+
x.writeFileString=function(a,b){b=(new TextEncoder).encode(b);x.FS.writeFile(a,b)};x.readdir=function(a){return x.FS.readdir(a)};x.stat=function(a){return x.FS.stat(a)};x.mkdir=function(a){return x.FS.mkdir(a)};x.unlink=function(a){return x.FS.unlink(a)};x.rmdir=function(a){return x.FS.rmdir(a)};x.rename=function(a,b){return x.FS.rename(a,b)};x.exists=function(a){try{return x.FS.stat(a),!0}catch(b){return!1}};
|
|
20
|
+
x.syncOPFS=async function(){var a=x.FS;if(a&&"function"===typeof a.syncfs)return new Promise(function(b,c){a.syncfs(!1,function(e){e?c(e):b()})})};x.__wasmfs_exports__={mountOPFS:x.mountOPFS,readFile:x.readFile,readFileString:x.readFileString,writeFile:x.writeFile,writeFileString:x.writeFileString,readdir:x.readdir,stat:x.stat,mkdir:x.mkdir,unlink:x.unlink,rmdir:x.rmdir,rename:x.rename,exists:x.exists,syncOPFS:x.syncOPFS,watchFiles:x.watchFiles,watchDirectory:x.watchDirectory};
|
|
21
|
+
var oa=Object.assign({},x),pa="./this.program",z="",qa,ra;
|
|
22
|
+
if(ja||ka)ka?z=self.location.href:"undefined"!=typeof document&&document.currentScript&&(z=document.currentScript.src),_scriptName&&(z=_scriptName),z.startsWith("blob:")?z="":z=z.substr(0,z.replace(/[?#].*/,"").lastIndexOf("/")+1),ka&&(ra=a=>{var b=new XMLHttpRequest;b.open("GET",a,!1);b.responseType="arraybuffer";b.send(null);return new Uint8Array(b.response)}),qa=a=>fetch(a,{credentials:"same-origin"}).then(b=>b.ok?b.arrayBuffer():Promise.reject(Error(b.status+" : "+b.url)));
|
|
23
|
+
var sa=x.print||console.log.bind(console),A=x.printErr||console.error.bind(console);Object.assign(x,oa);oa=null;x.thisProgram&&(pa=x.thisProgram);
|
|
24
|
+
if(y){var ua,va=!1;function a(...c){c=c.join(" ");console.error(c)}x.printErr||(A=a);self.alert=function(...c){c=c.join(" ");postMessage({Zc:"alert",text:c,ge:B()})};x.instantiateWasm=(c,e)=>new Promise(f=>{ua=g=>{g=new WebAssembly.Instance(g,wa());e(g);f()}});self.onunhandledrejection=c=>{throw c.reason||c;};function b(c){try{var e=c.data,f=e.cmd;if("load"===f){let g=[];self.onmessage=k=>g.push(k);self.startWorker=()=>{postMessage({cmd:"loaded"});for(let k of g)b(k);self.onmessage=b};for(const k of e.handlers)if(!x[k]||
|
|
25
|
+
x[k].proxy)x[k]=(...l)=>{postMessage({Zc:"callHandler",Od:k,yd:l})},"print"==k&&(sa=x[k]),"printErr"==k&&(A=x[k]);h=e.wasmMemory;p();ua(e.wasmModule)}else if("run"===f){xa(e.pthread_ptr,0,0,1,0,0);ya(e.pthread_ptr);za();Aa();va||=!0;try{Ba(e.start_routine,e.arg)}catch(g){if("unwind"!=g)throw g;}}else"cancel"===f?B()&&Ca(-1):"setimmediate"!==e.target&&("checkMailbox"===f?va&&Da():f&&(A(`worker: received unknown command ${f}`),A(e)))}catch(g){throw Ea(),g;}}self.onmessage=b}
|
|
26
|
+
var Fa=x.wasmBinary,h,Ga,Ha=!1,Ia,m,aa,ba,ca,ea;function p(){var a=h.buffer;x.HEAP8=m=new Int8Array(a);x.HEAP16=new Int16Array(a);x.HEAPU8=aa=new Uint8Array(a);x.HEAPU16=new Uint16Array(a);x.HEAP32=ba=new Int32Array(a);x.HEAPU32=ca=new Uint32Array(a);x.HEAPF32=new Float32Array(a);x.HEAPF64=ea=new Float64Array(a)}
|
|
27
|
+
if(!y){if(x.wasmMemory)h=x.wasmMemory;else if(h=new WebAssembly.Memory({initial:(x.INITIAL_MEMORY||16777216)/65536,maximum:32768,shared:!0}),!(h.buffer instanceof SharedArrayBuffer))throw A("requested a shared WebAssembly.Memory but the returned buffer is not a SharedArrayBuffer, indicating that while the browser has SharedArrayBuffer it does not have WebAssembly threads support - you may need to set a flag"),la&&A("(on node you may need: --experimental-wasm-threads --experimental-wasm-bulk-memory and/or recent version)"),
|
|
28
|
+
Error("bad memory");p()}var Ja=[],Ka=[],La=[],C=0,Ma=null,Na=null;function Oa(){C++;x.monitorRunDependencies?.(C)}function Pa(){C--;x.monitorRunDependencies?.(C);if(0==C&&(null!==Ma&&(clearInterval(Ma),Ma=null),Na)){var a=Na;Na=null;a()}}function Qa(a){x.onAbort?.(a);a="Aborted("+a+")";A(a);Ha=!0;Ia=1;a=new WebAssembly.RuntimeError(a+". Build with -sASSERTIONS for more info.");ha(a);throw a;}var Ra=a=>a.startsWith("data:application/octet-stream;base64,"),Sa;
|
|
29
|
+
function Ta(a){if(a==Sa&&Fa)return new Uint8Array(Fa);if(ra)return ra(a);throw"both async and sync fetching of the wasm failed";}function Ua(a){return Fa?Promise.resolve().then(()=>Ta(a)):qa(a).then(b=>new Uint8Array(b),()=>Ta(a))}function Va(a,b,c){return Ua(a).then(e=>WebAssembly.instantiate(e,b)).then(c,e=>{A(`failed to asynchronously prepare wasm: ${e}`);Qa(e)})}
|
|
30
|
+
function Wa(a,b){var c=Sa;return Fa||"function"!=typeof WebAssembly.instantiateStreaming||Ra(c)||"function"!=typeof fetch?Va(c,a,b):fetch(c,{credentials:"same-origin"}).then(e=>WebAssembly.instantiateStreaming(e,a).then(b,function(f){A(`wasm streaming compile failed: ${f}`);A("falling back to ArrayBuffer instantiation");return Va(c,a,b)}))}
|
|
31
|
+
function wa(){Xa={b:Ya,ha:Za,J:$a,oa:ab,ma:bb,ea:cb,ia:db,fa:eb,j:fb,la:ya,na:gb,t:hb,u:ib,ka:jb,E:kb,C:lb,D:mb,A:nb,x:ob,F:pb,B:qb,y:rb,w:sb,g:tb,v:ub,q:vb,o:wb,p:xb,V:yb,W:zb,R:Ab,K:Bb,Q:Cb,$:Db,L:Eb,Z:Fb,Y:Gb,_:Hb,ba:Ib,O:Jb,P:Kb,N:Lb,i:Mb,X:Nb,U:Ob,T:Pb,M:Qb,s:Rb,r:Sb,S:Tb,I:Ub,ca:Vb,z:Wb,k:Xb,h:Yb,f:Zb,c:$b,d:ac,l:bc,e:cc,H:dc,da:ec,ga:fc,qa:gc,m:hc,n:ic,G:jc,a:h,pa:kc,sa:lc,ra:mc,ja:nc,aa:oc};return{a:Xa}}var E,pc,qc={93642:()=>{"undefined"!==typeof x&&(x.wd=!0,x.vd="/root")}};
|
|
32
|
+
function lc(a,b,c,e,f){return x.callbacks.callFunction(void 0,a,b,c,e,f)}function mc(a){return x.callbacks.shouldInterrupt(void 0,a)}function nc(a,b,c){c=G(c);return x.callbacks.loadModuleSource(void 0,a,b,c)}function oc(a,b,c,e){c=G(c);e=G(e);return x.callbacks.normalizeModule(void 0,a,b,c,e)}function rc(a){this.name="ExitStatus";this.message=`Program terminated with exit(${a})`;this.status=a}
|
|
33
|
+
var sc=a=>{a.terminate();a.onmessage=()=>{}},uc=a=>{var b=H[a];delete H[a];sc(b);tc(a);I.splice(I.indexOf(b),1);b.Sc=0},xc=a=>{0==K.length&&(vc(),wc(K[0]));var b=K.pop();if(!b)return 6;I.push(b);H[a.Sc]=b;b.Sc=a.Sc;b.postMessage({cmd:"run",start_routine:a.pd,arg:a.fd,pthread_ptr:a.Sc},a.qd);return 0},yc=0,zc=(a,b)=>b+2097152>>>0<4194305-!!a?(a>>>0)+4294967296*b:NaN,N=(a,b,...c)=>{for(var e=c.length,f=L(),g=Ac(8*e),k=g>>3,l=0;l<c.length;l++){var n=c[l];da()[k+l]=n}a=Bc(a,0,e,g,b);M(f);return a};
|
|
34
|
+
function kc(a){if(y)return N(0,1,a);Ia=a;if(!(Cc||0<yc)){for(var b of I)sc(b);for(b of K)sc(b);K=[];I=[];H=[];x.onExit?.(a);Ha=!0}throw new rc(a);}var Dc=a=>{if(!(a instanceof rc||"unwind"==a))throw a;};function Ec(a){if(y)return N(1,0,a);ic(a)}var ic=a=>{Ia=a;if(y)throw Ec(a),"unwind";kc(a)},K=[],I=[],Fc=[],H={};function Gc(){for(var a=2;a--;)vc();Ja.unshift(()=>{Oa("loading-workers");Hc(()=>Pa("loading-workers"))})}var Ic=a=>{var b=a.Sc;delete H[b];K.push(a);I.splice(I.indexOf(a),1);a.Sc=0;tc(b)};
|
|
35
|
+
function Aa(){Fc.forEach(a=>a())}
|
|
36
|
+
var wc=a=>new Promise(b=>{a.onmessage=g=>{g=g.data;var k=g.cmd;if(g.targetThread&&g.targetThread!=B()){var l=H[g.targetThread];l?l.postMessage(g,g.transferList):A(`Internal error! Worker sent a message "${k}" to target pthread ${g.targetThread}, but that thread no longer exists!`)}else if("checkMailbox"===k)Da();else if("spawnThread"===k)xc(g);else if("cleanupThread"===k)Ic(H[g.thread]);else if("killThread"===k)uc(g.thread);else if("cancelThread"===k)H[g.thread].postMessage({cmd:"cancel"});else if("loaded"===
|
|
37
|
+
k)a.loaded=!0,b(a);else if("alert"===k)alert(`Thread ${g.threadId}: ${g.text}`);else if("setimmediate"===g.target)a.postMessage(g);else if("callHandler"===k)x[g.handler](...g.args);else k&&A(`worker sent an unknown command ${k}`)};a.onerror=g=>{A(`${"worker sent an error!"} ${g.filename}:${g.lineno}: ${g.message}`);throw g;};var c=[],e=["onExit","onAbort","print","printErr"],f;for(f of e)x.propertyIsEnumerable(f)&&c.push(f);a.postMessage({cmd:"load",handlers:c,wasmMemory:h,wasmModule:Ga})});
|
|
38
|
+
function Hc(a){y?a():Promise.all(K.map(wc)).then(a)}function vc(){var a=new Worker(new URL("emscripten-module.js",import.meta.url),{type:"module",name:"em-pthread"});K.push(a)}
|
|
39
|
+
var Jc=a=>{for(;0<a.length;)a.shift()(x)},za=()=>{var a=B(),b=v()[a+52>>2];a=v()[a+56>>2];Kc(b,b-a);M(b)},Lc,Ba=(a,b)=>{yc=0;a=Lc.get(a)(b);Cc||0<yc?Ia=a:Ca(a)},Cc=x.noExitRuntime||!0,Mc="undefined"!=typeof TextDecoder?new TextDecoder:void 0,Nc=(a,b,c)=>{var e=b+c;for(c=b;a[c]&&!(c>=e);)++c;if(16<c-b&&a.buffer&&Mc)return Mc.decode(a.slice(b,c));for(e="";b<c;){var f=a[b++];if(f&128){var g=a[b++]&63;if(192==(f&224))e+=String.fromCharCode((f&31)<<6|g);else{var k=a[b++]&63;f=224==(f&240)?(f&15)<<12|g<<
|
|
40
|
+
6|k:(f&7)<<18|g<<12|k<<6|a[b++]&63;65536>f?e+=String.fromCharCode(f):(f-=65536,e+=String.fromCharCode(55296|f>>10,56320|f&1023))}}else e+=String.fromCharCode(f)}return e},G=(a,b)=>a?Nc(r(),a,b):"",Ya=(a,b,c,e)=>{Qa(`Assertion failed: ${G(a)}, at: `+[b?G(b):"unknown filename",c,e?G(e):"unknown function"])};function Oc(a,b,c,e){return y?N(2,1,a,b,c,e):Za(a,b,c,e)}
|
|
41
|
+
var Za=(a,b,c,e)=>{if("undefined"==typeof SharedArrayBuffer)return A("Current environment does not support SharedArrayBuffer, pthreads are not available!"),6;var f=[];if(y&&0===f.length)return Oc(a,b,c,e);a={pd:c,Sc:a,fd:e,qd:f};return y?(a.Zc="spawnThread",postMessage(a,f),0):xc(a)},$a=(a,b)=>{33===b?y?postMessage({cmd:"cancelThread",thread:a}):H[a].postMessage({cmd:"cancel"}):y?postMessage({cmd:"killThread",thread:a}):uc(a);return 0},ab=()=>{Qa("")},bb=a=>{xa(a,!ka,1,!ja,5242880,!1);Aa()},Pc=a=>
|
|
42
|
+
{if(!Ha)try{if(a(),!(Cc||0<yc))try{y?Ca(Ia):ic(Ia)}catch(b){Dc(b)}}catch(b){Dc(b)}},ya=a=>{"function"===typeof Atomics.ud&&(Atomics.ud(u(),a>>2,a).value.then(Da),a+=128,Atomics.store(u(),a>>2,1))},Da=()=>{var a=B();a&&(ya(a),Pc(Qc))},cb=(a,b)=>{a==b?setTimeout(Da):y?postMessage({targetThread:a,cmd:"checkMailbox"}):(a=H[a])&&a.postMessage({cmd:"checkMailbox"})},Rc=[],db=(a,b,c,e,f)=>{Rc.length=e;c=f>>3;for(f=0;f<e;f++)Rc[f]=da()[c+f];return(b?qc[b]:Sc[a])(...Rc)};
|
|
43
|
+
function eb(){if(y)return N(3,1);Cc=!1;yc=0}var fb=a=>{y?postMessage({cmd:"cleanupThread",thread:a}):Ic(H[a])},gb=()=>{},Tc=[0,31,60,91,121,152,182,213,244,274,305,335],Uc=[0,31,59,90,120,151,181,212,243,273,304,334];
|
|
44
|
+
function hb(a,b,c){a=new Date(1E3*zc(a,b));u()[c>>2]=a.getSeconds();u()[c+4>>2]=a.getMinutes();u()[c+8>>2]=a.getHours();u()[c+12>>2]=a.getDate();u()[c+16>>2]=a.getMonth();u()[c+20>>2]=a.getFullYear()-1900;u()[c+24>>2]=a.getDay();b=a.getFullYear();b=(0!==b%4||0===b%100&&0!==b%400?Uc:Tc)[a.getMonth()]+a.getDate()-1|0;u()[c+28>>2]=b;u()[c+36>>2]=-(60*a.getTimezoneOffset());b=(new Date(a.getFullYear(),6,1)).getTimezoneOffset();var e=(new Date(a.getFullYear(),0,1)).getTimezoneOffset();a=(b!=e&&a.getTimezoneOffset()==
|
|
45
|
+
Math.min(e,b))|0;u()[c+32>>2]=a}var Vc={},cc;cc=()=>performance.timeOrigin+performance.now();function ib(a,b){if(y)return N(4,1,a,b);Vc[a]&&(clearTimeout(Vc[a].id),delete Vc[a]);if(!b)return 0;var c=setTimeout(()=>{delete Vc[a];Pc(()=>Wc(a,cc()))},b);Vc[a]={id:c,he:b};return 0}
|
|
46
|
+
var Yc=(a,b,c,e)=>{if(!(0<e))return 0;var f=c;e=c+e-1;for(var g=0;g<a.length;++g){var k=a.charCodeAt(g);if(55296<=k&&57343>=k){var l=a.charCodeAt(++g);k=65536+((k&1023)<<10)|l&1023}if(127>=k){if(c>=e)break;b[c++]=k}else{if(2047>=k){if(c+1>=e)break;b[c++]=192|k>>6}else{if(65535>=k){if(c+2>=e)break;b[c++]=224|k>>12}else{if(c+3>=e)break;b[c++]=240|k>>18;b[c++]=128|k>>12&63}b[c++]=128|k>>6&63}b[c++]=128|k&63}}b[c]=0;return c-f},O=(a,b,c)=>Yc(a,r(),b,c),jb=(a,b,c,e)=>{var f=(new Date).getFullYear(),g=
|
|
47
|
+
(new Date(f,0,1)).getTimezoneOffset();f=(new Date(f,6,1)).getTimezoneOffset();var k=Math.max(g,f);v()[a>>2]=60*k;u()[b>>2]=Number(g!=f);b=l=>{var n=Math.abs(l);return`UTC${0<=l?"-":"+"}${String(Math.floor(n/60)).padStart(2,"0")}${String(n%60).padStart(2,"0")}`};a=b(g);b=b(f);f<g?(O(a,c,17),O(b,e,17)):(O(a,e,17),O(b,c,17))},kb=(a,b)=>r().set(Zc[a].$c,b),$c=[],lb=()=>$c.length,Zc=[],ad=!1,mb=()=>{ad=!0;return Zc.length},nb=(a,b)=>{a=$c[a].gd;O(a,b,P(a)+1)},ob=a=>Zc[a].mode,pb=a=>Zc[a].$c.length,qb=
|
|
48
|
+
(a,b)=>{a=$c[a].md;O(a,b,P(a)+1)},P=a=>{for(var b=0,c=0;c<a.length;++c){var e=a.charCodeAt(c);127>=e?b++:2047>=e?b+=2:55296<=e&&57343>=e?(b+=4,++c):b+=3}return b},rb=(a,b)=>{a=Zc[a].nd;O(a,b,P(a)+1)},sb=(a,b)=>Q[a].ed(b),tb=(a,b)=>Q[a].kd(b),ub=(a,b)=>Q[a].getSize(b);function vb(a,b,c,e,f,g){return Q[a].read?Q[a].read(b,c,e,zc(f,g)):-28}var wb=()=>0;function xb(a,b,c,e,f,g){return Q[a].write?Q[a].write(b,c,e,zc(f,g)):-28}function bd(a,b){a.Qc[b]=void 0;a.Yc.push(b)}
|
|
49
|
+
class cd{constructor(){this.Qc=[void 0];this.Yc=[]}get(a){return this.Qc[a]}has(a){return void 0!==this.Qc[a]}Tc(a){var b=this.Yc.pop()||this.Qc.length;this.Qc[b]=a;return b}}var R=new cd;async function yb(a,b,c){let e=R.get(b);try{await e.close()}catch{u()[c>>2]=-29}bd(R,b);S(a)}var dd=new cd,zb=a=>{bd(dd,a)};async function Ab(a,b,c){b=R.get(b);try{await b.flush()}catch{u()[c>>2]=-29}S(a)}var T=new cd,Bb=a=>{bd(T,a)},U=new cd,Cb=a=>{bd(U,a)};
|
|
50
|
+
async function ed(a,b,c){a=T.get(a);let e;try{e=await a.getFileHandle(b,{create:c})}catch(f){return"NotFoundError"===f.name?-20:"TypeMismatchError"===f.name?-31:-29}return U.Tc(e)}async function fd(a,b,c){a=T.get(a);let e;try{e=await a.getDirectoryHandle(b,{create:c})}catch(f){return"NotFoundError"===f.name?-20:"TypeMismatchError"===f.name?-54:-29}return T.Tc(e)}async function Db(a,b,c,e,f){c=G(c);let g=1,k=await ed(b,c,!1);-31==k&&(g=2,k=await fd(b,c,!1));u()[e>>2]=g;u()[f>>2]=k;S(a)}
|
|
51
|
+
async function Eb(a,b,c,e){b=T.get(b);try{let f=b.entries();for(let g;g=await f.next(),!g.done;){let [k,l]=g.value,n=L(),q=V(k);gd(c,q,"file"==l.kind?1:2);M(n)}}catch{u()[e>>2]=-29}S(a)}async function Fb(a,b,c){b=R.get(b);let e;try{e=await b.getSize()}catch{e=-29}pc=[e>>>0,(E=e,1<=+Math.abs(E)?0<E?+Math.floor(E/4294967296)>>>0:~~+Math.ceil((E-+(~~E>>>0))/4294967296)>>>0:0)];u()[c>>2]=pc[0];u()[c+4>>2]=pc[1];S(a)}var Gb=a=>dd.get(a).size;
|
|
52
|
+
async function Hb(a,b,c){b=U.get(b);let e;try{e=(await b.getFile()).size}catch{e=-29}pc=[e>>>0,(E=e,1<=+Math.abs(E)?0<E?+Math.floor(E/4294967296)>>>0:~~+Math.ceil((E-+(~~E>>>0))/4294967296)>>>0:0)];u()[c>>2]=pc[0];u()[c+4>>2]=pc[1];S(a)}async function Ib(a){if(1==T.Qc.length){let b=await navigator.storage.getDirectory();T.Qc.push(b)}S(a)}async function Jb(a,b,c,e){c=G(c);b=await fd(b,c,!0);u()[e>>2]=b;S(a)}async function Kb(a,b,c,e){c=G(c);b=await ed(b,c,!0);u()[e>>2]=b;S(a)}
|
|
53
|
+
async function Lb(a,b,c,e,f){e=G(e);b=U.get(b);c=T.get(c);try{await b.move(c,e)}catch{u()[f>>2]=-29}S(a)}async function Mb(a,b,c){b=U.get(b);let e;try{let f;f=0==FileSystemFileHandle.prototype.createSyncAccessHandle.length?await b.createSyncAccessHandle():await b.createSyncAccessHandle({mode:"in-place"});e=R.Tc(f)}catch(f){e="InvalidStateError"===f.name||"NoModificationAllowedError"===f.name?-2:-29}u()[c>>2]=e;S(a)}
|
|
54
|
+
async function Nb(a,b,c){b=U.get(b);let e;try{let f=await b.getFile();e=dd.Tc(f)}catch(f){e="NotAllowedError"===f.name?-2:-29}u()[c>>2]=e;S(a)}function Ob(a,b,c,e){a=R.get(a);b=r().subarray(b,b+c);try{return a.read(b,{at:e})}catch(f){return"TypeError"==f.name?-28:-29}}async function Pb(a,b,c,e,f,g){b=dd.get(b).slice(f,f+e);e=0;try{let k=await b.arrayBuffer(),l=new Uint8Array(k);r().set(l,c);e+=l.length}catch(k){e=k instanceof RangeError?-21:-29}u()[g>>2]=e;S(a)}
|
|
55
|
+
async function Qb(a,b,c,e){c=G(c);b=T.get(b);try{await b.removeEntry(c)}catch{u()[e>>2]=-29}S(a)}async function Rb(a,b,c,e,f){c=zc(c,e);b=R.get(b);try{await b.truncate(c)}catch{u()[f>>2]=-29}S(a)}async function Sb(a,b,c,e,f){c=zc(c,e);b=U.get(b);try{let g=await b.createWritable({keepExistingData:!0});await g.truncate(c);await g.close()}catch{u()[f>>2]=-29}S(a)}function Tb(a,b,c,e){a=R.get(a);b=r().subarray(b,b+c);try{return a.write(b,{at:e})}catch(f){return"TypeError"==f.name?-28:-29}}
|
|
56
|
+
var hd=[],Ub=()=>{a:{if(!hd.length){var a=null;"undefined"!=typeof window&&"function"==typeof window.prompt&&(a=window.prompt("Input: "),null!==a&&(a+="\n"));if(!a){var b=null;break a}b=Array(P(a)+1);a=Yc(a,b,0,b.length);b.length=a;hd=b}b=hd.shift()}return"number"===typeof b?b:-1},Vb=a=>{var b=setInterval(()=>{Ha?clearInterval(b):jd(a)},50)},kd=[],Wb=(a,b,c)=>{kd.length=0;for(var e;e=r()[b++];){var f=105!=e;f&=112!=e;c+=f&&c%8?4:0;kd.push(112==e?v()[c>>2]:105==e?u()[c>>2]:da()[c>>3]);c+=f?8:4}return qc[a](...kd)},
|
|
57
|
+
Xb=()=>{},Yb=a=>{console.error(G(a))},Zb=a=>{console.log(G(a))},$b=()=>Date.now(),ac=a=>A(G(a)),bc=()=>{yc+=1;throw"unwind";},dc=a=>sa(G(a)),ec=a=>{var b=r().length;a>>>=0;if(a<=b||2147483648<a)return!1;for(var c=1;4>=c;c*=2){var e=b*(1+.2/c);e=Math.min(e,a+100663296);a:{e=(Math.min(2147483648,65536*Math.ceil(Math.max(a,e)/65536))-h.buffer.byteLength+65535)/65536;try{h.grow(e);p();var f=1;break a}catch(g){}f=void 0}if(f)return!0}return!1},fc=()=>{throw"unwind";},ld={},nd=()=>{if(!md){var a={USER:"web_user",
|
|
58
|
+
LOGNAME:"web_user",PATH:"/",PWD:"/",HOME:"/home/web_user",LANG:("object"==typeof navigator&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8",_:pa||"./this.program"},b;for(b in ld)void 0===ld[b]?delete a[b]:a[b]=ld[b];var c=[];for(b in a)c.push(`${b}=${a[b]}`);md=c}return md},md;function gc(a,b){if(y)return N(5,1,a,b);var c=0;nd().forEach((e,f)=>{var g=b+c;f=v()[a+4*f>>2]=g;for(g=0;g<e.length;++g)d()[f++]=e.charCodeAt(g);d()[f]=0;c+=e.length+1});return 0}
|
|
59
|
+
function hc(a,b){if(y)return N(6,1,a,b);var c=nd();v()[a>>2]=c.length;var e=0;c.forEach(f=>e+=f.length+1);v()[b>>2]=e;return 0}
|
|
60
|
+
var od=()=>{if("object"==typeof crypto&&"function"==typeof crypto.getRandomValues)return a=>(a.set(crypto.getRandomValues(new Uint8Array(a.byteLength))),a);Qa("initRandomDevice")},pd=a=>(pd=od())(a),jc=(a,b)=>{pd(r().subarray(a,a+b));return 0},W={bd:a=>"/"===a.charAt(0),od:a=>/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/.exec(a).slice(1),dd:(a,b)=>{for(var c=0,e=a.length-1;0<=e;e--){var f=a[e];"."===f?a.splice(e,1):".."===f?(a.splice(e,1),c++):c&&(a.splice(e,1),c--)}if(b)for(;c;c--)a.unshift("..");
|
|
61
|
+
return a},normalize:a=>{var b=W.bd(a),c="/"===a.substr(-1);(a=W.dd(a.split("/").filter(e=>!!e),!b).join("/"))||b||(a=".");a&&c&&(a+="/");return(b?"/":"")+a},dirname:a=>{var b=W.od(a);a=b[0];b=b[1];if(!a&&!b)return".";b&&=b.substr(0,b.length-1);return a+b},Ad:a=>{if("/"===a)return"/";a=W.normalize(a);a=a.replace(/\/$/,"");var b=a.lastIndexOf("/");return-1===b?a:a.substr(b+1)},join:(...a)=>W.normalize(a.join("/")),Xc:(a,b)=>W.normalize(a+"/"+b)},V=a=>{var b=P(a)+1,c=Ac(b);O(a,c,b);return c},X=a=>{var b=
|
|
62
|
+
L();a=a();M(b);return a},qd=a=>v()[a>>2]+4294967296*u()[a+4>>2],sd=(a,b,c)=>Y.handleError(X(()=>{var e=V(a);return rd(e,b,c)})),td=(a,b=438)=>sd(a,b&4095|32768,0),xd=(a,b)=>{var c=L();a=V(a);if("string"==typeof b){var e=new Uint8Array(P(b)+1);b=Yc(b,e,0,e.length);b=e.slice(0,b)}e=ud(b.length);for(var f=0;f<b.length;f++)d()[e+f]=b[f];b=vd(a,e,b.length);wd(e);M(c);return b},zd=(a,b,c,e,f)=>{a=b?a+"/"+b:a;e=yd(e,f);ad?(td(a,e),xd(a,c)):Zc.push({nd:a,$c:c,mode:e})},Ad=(a,b,c)=>{var e=`al ${a}`;qa(a).then(f=>
|
|
63
|
+
{b(new Uint8Array(f));e&&Pa(e)},()=>{if(c)c();else throw`Loading data file "${a}" failed.`;});e&&Oa(e)},Bd=(...a)=>{for(var b="",c=!1,e=a.length-1;-1<=e&&!c;e--){c=0<=e?a[e]:Y.jd();if("string"!=typeof c)throw new TypeError("Arguments to path.resolve must be strings");if(!c)return"";b=c+"/"+b;c=W.bd(c)}b=W.dd(b.split("/").filter(f=>!!f),!c).join("/");return(c?"/":"")+b||"."},Cd=x.preloadPlugins||[],Ed=(a,b,c,e)=>{"undefined"!=typeof Browser&&Dd();var f=!1;Cd.forEach(g=>{!f&&g.canHandle(b)&&(g.handle(a,
|
|
64
|
+
b,c,e),f=!0)});return f},Fd=(a,b,c,e,f,g,k,l,n,q)=>{function t(F){function J(ta){q?.();l||zd(a,b,ta,e,f,n);g?.();Pa(D)}Ed(F,w,J,()=>{k?.();Pa(D)})||J(F)}var w=b?Bd(W.Xc(a,b)):a,D=`cp ${w}`;Oa(D);"string"==typeof c?Ad(c,t,k):t(c)},yd=(a,b)=>{var c=0;a&&(c|=365);b&&(c|=146);return c},Hd=(a,b=511)=>Y.handleError(X(()=>{var c=V(a);return Gd(c,b)})),Jd=a=>X(()=>{var b=V(a);return Id(b)}),Q={},Kd={},Ld={};
|
|
65
|
+
function Dd(){Y.Oc||(Y.Oc=function(a){this.Wc=a;this.message="FS error";this.name="ErrnoError"},Y.Oc.prototype=Error(),Y.Oc.prototype.constructor=Y.Oc)}function Md(a){var b=X(()=>Nd(V(a)));return 44==b?null:{Rd:31==b,Qd:!1}}
|
|
66
|
+
function Od(a){var b=v()[a>>2],c=v()[a+4>>2],e=v()[a+8>>2],f=v()[a+12>>2],g=v()[a+16>>2],k=v()[a+20>>2],l=qd(a+24),n=v()[a+32>>2],q=v()[a+36>>2],t=qd(a+40),w=qd(a+56),D=qd(a+72);a+=88;a=v()[a>>2]+4294967296*v()[a+4>>2];return{Kd:b,mode:c,$d:e,uid:f,Nd:g,be:k,size:l,Bd:n,Cd:q,zd:t,Pc:w,Jd:D,Pd:a}}
|
|
67
|
+
function Pd(a,b){var c=Qd(),e={rd:b.read,sd:b.write,ed:f=>{Ld[f]={}},kd:f=>{Ld[f]=void 0},getSize:()=>{},ee:()=>0,read:(f,g,k,l)=>{var n=x.Uc.subarray(g,g+k);try{var q=e.rd(Ld[f],n,0,k,l)}catch(t){return-t.Wc}x.Uc.set(n,g);return q},write:(f,g,k,l)=>{var n=x.Uc.subarray(g,g+k);try{var q=e.sd(Ld[f],n,0,k,l)}catch(t){return-t.Wc}x.Uc.set(n,g);return q}};Q[c]=e;Kd[a]=c}
|
|
68
|
+
function Rd(a,b,c){"undefined"===typeof c&&(c=b,b=438);var e=Kd[c];if(!e)throw Error("Invalid device ID.");return Y.handleError(X(()=>Sd(V(a),b,e)))}
|
|
69
|
+
var Y={Oc:null,handleError(a){if(0>a)throw new Y.Oc(-a);return a},Hd(a,b,c,e,f,g){zd(a,b,c,e,f,g)},hd(a,b){for(b=b.split("/").reverse();b.length;){var c=b.pop();if(c){var e=W.Xc(a,c);ad?Y.mkdir(e):$c.push({md:a,gd:c});a=e}}return e},Id(a,b,c,e,f,g,k,l,n,q){return Fd(a,b,c,e,f,g,k,l,n,q)},readFile(a,b={}){b.encoding=b.encoding||"binary";if("utf8"!==b.encoding&&"binary"!==b.encoding)throw Error('Invalid encoding type "'+b.encoding+'"');var c=L();a=Td(V(a));M(c);c=qd(a);c=new Uint8Array(r().subarray(a+
|
|
70
|
+
8,a+8+c));"utf8"===b.encoding&&(c=Nc(c,0));return c},jd:()=>G(Ud()),xd(a){var b=!!Md(a);return{exists:b,object:{Fd:b?Y.readFile(a):null}}},mkdir:(a,b)=>Hd(a,b),Vd:(a,b)=>{a=a.split("/");for(var c="",e=0;e<a.length;++e)if(a[e]){c+="/"+a[e];try{Hd(c,b)}catch(f){if(20!=f.Wc)throw f;}}},rmdir:a=>Y.handleError(X(()=>Vd(V(a)))),open:(a,b,c)=>X(()=>{if("string"==typeof b){var e={r:0,"r+":2,w:577,"w+":578,a:1089,"a+":1090}[b];if("undefined"==typeof e)throw Error(`Unknown file open mode: ${b}`);}else e=b;
|
|
71
|
+
b=e;c="undefined"==typeof c?438:c;e=V(a);return{Rc:Y.handleError(Wd(e,b,c))}}),create:(a,b)=>td(a,b),close:a=>Y.handleError(-Xd(a.Rc)),unlink:a=>Jd(a),Dd:a=>X(()=>{var b=V(a);return Yd(b)}),read(a,b,c,e,f){var g="undefined"!=typeof f,k=ud(e);a=g?Zd(a.Rc,k,e,f):$d(a.Rc,k,e);a=Y.handleError(a);for(f=0;f<e;f++)b[c+f]=d()[k+f];wd(k);return a},write(a,b,c,e,f){for(var g="undefined"!=typeof f,k=ud(e),l=0;l<e;l++)d()[k+l]=b[c+l];a=g?ae(a.Rc,k,e,f):be(a.Rc,k,e);a=Y.handleError(a);wd(k);return a},Tc(a,b,c){return Y.handleError(ce(a.Rc,
|
|
72
|
+
b>>>0,(E=b,1<=+Math.abs(E)?0<E?+Math.floor(E/4294967296)>>>0:~~+Math.ceil((E-+(~~E>>>0))/4294967296)>>>0:0),c>>>0,(E=c,1<=+Math.abs(E)?0<E?+Math.floor(E/4294967296)>>>0:~~+Math.ceil((E-+(~~E>>>0))/4294967296)>>>0:0)))},writeFile:(a,b)=>xd(a,b),Xd:(a,b,c,e,f)=>({ae:Y.handleError(de(b,e,f,a.Rc,c>>>0,(E=c,1<=+Math.abs(E)?0<E?+Math.floor(E/4294967296)>>>0:~~+Math.ceil((E-+(~~E>>>0))/4294967296)>>>0:0))),Qc:!0}),Yd:(a,b,c,e,f)=>{0===c||Qa();return Y.handleError(ee(b,e,f))},Zd:(a,b)=>Y.handleError(fe(a,
|
|
73
|
+
b)),fe:(a,b)=>X(()=>ge(V(a),V(b))),ce(a){var b=Y.handleError(X(()=>he(V(a))));return G(b)},stat(a){var b=ud(96);Y.handleError(X(()=>ie(V(a),b)));var c=Od(b);wd(b);return c},Ud(a){var b=ud(96);Y.handleError(X(()=>je(V(a),b)));var c=Od(b);wd(b);return c},Ed(a,b){return Y.handleError(X(()=>{var c=V(a);return ke(c,b)}))},Sd(a,b){return Y.handleError(X(()=>{var c=V(a);return le(c,b)}))},Ld(a,b){return Y.handleError(me(a,b))},je:(a,b,c)=>Y.handleError(X(()=>ne(V(a),b,c))),truncate(a,b){return Y.handleError(X(()=>
|
|
74
|
+
oe(V(a),b>>>0,(E=b,1<=+Math.abs(E)?0<E?+Math.floor(E/4294967296)>>>0:~~+Math.ceil((E-+(~~E>>>0))/4294967296)>>>0:0))))},Md(a,b){return Y.handleError(pe(a,b>>>0,(E=b,1<=+Math.abs(E)?0<E?+Math.floor(E/4294967296)>>>0:~~+Math.ceil((E-+(~~E>>>0))/4294967296)>>>0:0)))},readdir:a=>X(()=>{var b=V(a),c=[];b=qe(b);if(!b)throw Error("No such directory");for(var e;e=re(b);)c.push(G(e));se(b);return c}),mount:(a,b,c)=>{var e=a.Gd(b);return Y.handleError(X(()=>te(V(c),e)))},ie:a=>Y.handleError(X(()=>ue(V(a)))),
|
|
75
|
+
Wd:(a,b,c)=>sd(a,b,c),ld:(a,b)=>a<<8|b,Vc(a,b,c,e){if("string"!=typeof a)throw Error("Only string paths are accepted");a=W.Xc(a,b);b=yd(!!c,!!e);Y.Vc.cd||(Y.Vc.cd=64);var f=Y.ld(Y.Vc.cd++,0);Pd(f,{read(g,k,l,n){for(var q=g=0;q<n;q++){try{var t=c()}catch(w){throw new Y.Oc(29);}if(void 0===t&&0===g)throw new Y.Oc(6);if(null===t||void 0===t)break;g++;k[l+q]=t}return g},write(g,k,l,n){for(g=0;g<n;g++)try{e(k[l+g])}catch(q){throw new Y.Oc(29);}return g}});return Rd(a,b,f)},rename(a,b){return Y.handleError(X(()=>
|
|
76
|
+
{var c=V(a),e=V(b);return ve(c,e)}))},Td(a,b,c){return Y.handleError(we(a.Rc,b>>>0,(E=b,1<=+Math.abs(E)?0<E?+Math.floor(E/4294967296)>>>0:~~+Math.ceil((E-+(~~E>>>0))/4294967296)>>>0:0),c))}},xe=(a,b,c,e)=>{var f={string:q=>{var t=0;null!==q&&void 0!==q&&0!==q&&(t=V(q));return t},array:q=>{var t=Ac(q.length);d().set(q,t);return t}};a=x["_"+a];var g=[],k=0;if(e)for(var l=0;l<e.length;l++){var n=f[c[l]];n?(0===k&&(k=L()),g[l]=n(e[l])):g[l]=e[l]}c=a(...g);return c=function(q){0!==k&&M(k);return"string"===
|
|
77
|
+
b?G(q):"boolean"===b?!!q:q}(c)},ye=Y.hd;y?Cc=!1:Gc();Dd();
|
|
78
|
+
var Sc=[kc,Ec,Oc,eb,ib,gc,hc],Xa,Z=function(){function a(c,e){Z=c.exports;Fc.push(Z.Nb);Lc=Z.Pb;Ka.unshift(Z.ta);Ga=e;Pa("wasm-instantiate");return Z}var b=wa();Oa("wasm-instantiate");if(x.instantiateWasm)try{return x.instantiateWasm(b,a)}catch(c){A(`Module.instantiateWasm callback failed with error: ${c}`),ha(c)}Sa||=x.locateFile?Ra("emscripten-module.wasm")?"emscripten-module.wasm":x.locateFile?x.locateFile("emscripten-module.wasm",z):z+"emscripten-module.wasm":(new URL("emscripten-module.wasm",
|
|
79
|
+
import.meta.url)).href;Wa(b,function(c){a(c.instance,c.module)}).catch(ha);return{}}(),ud=x._malloc=a=>(ud=x._malloc=Z.ua)(a);x._QTS_Throw=(a,b)=>(x._QTS_Throw=Z.va)(a,b);x._QTS_NewError=a=>(x._QTS_NewError=Z.wa)(a);x._QTS_RuntimeSetMemoryLimit=(a,b)=>(x._QTS_RuntimeSetMemoryLimit=Z.xa)(a,b);x._QTS_RuntimeComputeMemoryUsage=(a,b)=>(x._QTS_RuntimeComputeMemoryUsage=Z.ya)(a,b);x._QTS_RuntimeDumpMemoryUsage=a=>(x._QTS_RuntimeDumpMemoryUsage=Z.za)(a);
|
|
80
|
+
x._QTS_RecoverableLeakCheck=()=>(x._QTS_RecoverableLeakCheck=Z.Aa)();x._QTS_BuildIsSanitizeLeak=()=>(x._QTS_BuildIsSanitizeLeak=Z.Ba)();x._QTS_RuntimeSetMaxStackSize=(a,b)=>(x._QTS_RuntimeSetMaxStackSize=Z.Ca)(a,b);x._QTS_GetUndefined=()=>(x._QTS_GetUndefined=Z.Da)();x._QTS_GetNull=()=>(x._QTS_GetNull=Z.Ea)();x._QTS_GetFalse=()=>(x._QTS_GetFalse=Z.Fa)();x._QTS_GetTrue=()=>(x._QTS_GetTrue=Z.Ga)();x._QTS_NewRuntime=()=>(x._QTS_NewRuntime=Z.Ha)();x._QTS_FreeRuntime=a=>(x._QTS_FreeRuntime=Z.Ia)(a);
|
|
81
|
+
var wd=x._free=a=>(wd=x._free=Z.Ja)(a);x._QTS_NewContext=(a,b)=>(x._QTS_NewContext=Z.Ka)(a,b);x._QTS_FreeContext=a=>(x._QTS_FreeContext=Z.La)(a);x._QTS_FreeValuePointer=(a,b)=>(x._QTS_FreeValuePointer=Z.Ma)(a,b);x._QTS_FreeValuePointerRuntime=(a,b)=>(x._QTS_FreeValuePointerRuntime=Z.Na)(a,b);x._QTS_FreeVoidPointer=(a,b)=>(x._QTS_FreeVoidPointer=Z.Oa)(a,b);x._QTS_FreeCString=(a,b)=>(x._QTS_FreeCString=Z.Pa)(a,b);x._QTS_DupValuePointer=(a,b)=>(x._QTS_DupValuePointer=Z.Qa)(a,b);
|
|
82
|
+
x._QTS_NewObject=a=>(x._QTS_NewObject=Z.Ra)(a);x._QTS_NewObjectProto=(a,b)=>(x._QTS_NewObjectProto=Z.Sa)(a,b);x._QTS_NewArray=a=>(x._QTS_NewArray=Z.Ta)(a);x._QTS_NewArrayBuffer=(a,b,c)=>(x._QTS_NewArrayBuffer=Z.Ua)(a,b,c);x._QTS_NewFloat64=(a,b)=>(x._QTS_NewFloat64=Z.Va)(a,b);x._QTS_GetFloat64=(a,b)=>(x._QTS_GetFloat64=Z.Wa)(a,b);x._QTS_NewString=(a,b)=>(x._QTS_NewString=Z.Xa)(a,b);x._QTS_GetString=(a,b)=>(x._QTS_GetString=Z.Ya)(a,b);x._QTS_GetArrayBuffer=(a,b)=>(x._QTS_GetArrayBuffer=Z.Za)(a,b);
|
|
83
|
+
x._QTS_GetArrayBufferLength=(a,b)=>(x._QTS_GetArrayBufferLength=Z._a)(a,b);x._QTS_NewSymbol=(a,b,c)=>(x._QTS_NewSymbol=Z.$a)(a,b,c);x._QTS_GetSymbolDescriptionOrKey=(a,b)=>(x._QTS_GetSymbolDescriptionOrKey=Z.ab)(a,b);x._QTS_IsGlobalSymbol=(a,b)=>(x._QTS_IsGlobalSymbol=Z.bb)(a,b);x._QTS_IsJobPending=a=>(x._QTS_IsJobPending=Z.cb)(a);x._QTS_ExecutePendingJob=(a,b,c)=>(x._QTS_ExecutePendingJob=Z.db)(a,b,c);x._QTS_GetProp=(a,b,c)=>(x._QTS_GetProp=Z.eb)(a,b,c);
|
|
84
|
+
x._QTS_GetPropNumber=(a,b,c)=>(x._QTS_GetPropNumber=Z.fb)(a,b,c);x._QTS_SetProp=(a,b,c,e)=>(x._QTS_SetProp=Z.gb)(a,b,c,e);x._QTS_DefineProp=(a,b,c,e,f,g,k,l,n)=>(x._QTS_DefineProp=Z.hb)(a,b,c,e,f,g,k,l,n);x._QTS_GetOwnPropertyNames=(a,b,c,e,f)=>(x._QTS_GetOwnPropertyNames=Z.ib)(a,b,c,e,f);x._QTS_Call=(a,b,c,e,f)=>(x._QTS_Call=Z.jb)(a,b,c,e,f);x._QTS_ResolveException=(a,b)=>(x._QTS_ResolveException=Z.kb)(a,b);x._QTS_GetException=a=>(x._QTS_GetException=Z.lb)(a);
|
|
85
|
+
x._QTS_Dump=(a,b)=>(x._QTS_Dump=Z.mb)(a,b);x._QTS_Eval=(a,b,c,e,f,g)=>(x._QTS_Eval=Z.nb)(a,b,c,e,f,g);x._QTS_GetModuleNamespace=(a,b)=>(x._QTS_GetModuleNamespace=Z.ob)(a,b);x._QTS_Typeof=(a,b)=>(x._QTS_Typeof=Z.pb)(a,b);x._QTS_GetLength=(a,b,c)=>(x._QTS_GetLength=Z.qb)(a,b,c);x._QTS_IsEqual=(a,b,c,e)=>(x._QTS_IsEqual=Z.rb)(a,b,c,e);x._QTS_GetGlobalObject=a=>(x._QTS_GetGlobalObject=Z.sb)(a);x._QTS_NewPromiseCapability=(a,b)=>(x._QTS_NewPromiseCapability=Z.tb)(a,b);
|
|
86
|
+
x._QTS_PromiseState=(a,b)=>(x._QTS_PromiseState=Z.ub)(a,b);x._QTS_PromiseResult=(a,b)=>(x._QTS_PromiseResult=Z.vb)(a,b);x._QTS_TestStringArg=a=>(x._QTS_TestStringArg=Z.wb)(a);x._QTS_GetDebugLogEnabled=a=>(x._QTS_GetDebugLogEnabled=Z.xb)(a);x._QTS_SetDebugLogEnabled=(a,b)=>(x._QTS_SetDebugLogEnabled=Z.yb)(a,b);x._QTS_BuildIsDebug=()=>(x._QTS_BuildIsDebug=Z.zb)();x._QTS_BuildIsAsyncify=()=>(x._QTS_BuildIsAsyncify=Z.Ab)();x._QTS_NewFunction=(a,b,c)=>(x._QTS_NewFunction=Z.Bb)(a,b,c);
|
|
87
|
+
x._QTS_ArgvGetJSValueConstPointer=(a,b)=>(x._QTS_ArgvGetJSValueConstPointer=Z.Cb)(a,b);x._QTS_RuntimeEnableInterruptHandler=a=>(x._QTS_RuntimeEnableInterruptHandler=Z.Db)(a);x._QTS_RuntimeDisableInterruptHandler=a=>(x._QTS_RuntimeDisableInterruptHandler=Z.Eb)(a);x._QTS_RuntimeEnableModuleLoader=(a,b)=>(x._QTS_RuntimeEnableModuleLoader=Z.Fb)(a,b);x._QTS_RuntimeDisableModuleLoader=a=>(x._QTS_RuntimeDisableModuleLoader=Z.Gb)(a);x._QTS_bjson_encode=(a,b)=>(x._QTS_bjson_encode=Z.Hb)(a,b);
|
|
88
|
+
x._QTS_bjson_decode=(a,b)=>(x._QTS_bjson_decode=Z.Ib)(a,b);x._QTS_EvalFunction=(a,b)=>(x._QTS_EvalFunction=Z.Jb)(a,b);x._QTS_EncodeBytecode=(a,b)=>(x._QTS_EncodeBytecode=Z.Kb)(a,b);x._QTS_DecodeBytecode=(a,b)=>(x._QTS_DecodeBytecode=Z.Lb)(a,b);x._QTS_ResolveModule=(a,b)=>(x._QTS_ResolveModule=Z.Mb)(a,b);
|
|
89
|
+
var B=()=>(B=Z.Ob)(),xa=(a,b,c,e,f,g)=>(xa=Z.Qb)(a,b,c,e,f,g),Ea=()=>(Ea=Z.Rb)(),jd=a=>(jd=Z.Sb)(a),S=a=>(S=Z.Tb)(a),Bc=(a,b,c,e,f)=>(Bc=Z.Ub)(a,b,c,e,f),tc=a=>(tc=Z.Vb)(a),Ca=a=>(Ca=Z.Wb)(a),Wc=(a,b)=>(Wc=Z.Xb)(a,b),Qc=()=>(Qc=Z.Yb)(),Kc=(a,b)=>(Kc=Z.Zb)(a,b),M=a=>(M=Z._b)(a),Ac=a=>(Ac=Z.$b)(a),L=()=>(L=Z.ac)(),Td=a=>(Td=Z.bc)(a),vd=(a,b,c)=>(vd=Z.cc)(a,b,c),Gd=(a,b)=>(Gd=Z.dc)(a,b),Vd=a=>(Vd=Z.ec)(a),Wd=(a,b,c)=>(Wd=Z.fc)(a,b,c),ce=(a,b,c,e,f)=>(ce=Z.gc)(a,b,c,e,f),rd=(a,b,c)=>(rd=Z.hc)(a,b,c),
|
|
90
|
+
Id=a=>(Id=Z.ic)(a),Yd=a=>(Yd=Z.jc)(a),ge=(a,b)=>(ge=Z.kc)(a,b),he=a=>(he=Z.lc)(a),be=(a,b,c)=>(be=Z.mc)(a,b,c),ae=(a,b,c,e,f)=>(ae=Z.nc)(a,b,c,e,f),ke=(a,b)=>(ke=Z.oc)(a,b),me=(a,b)=>(me=Z.pc)(a,b),le=(a,b)=>(le=Z.qc)(a,b),we=(a,b,c,e)=>(we=Z.rc)(a,b,c,e),ve=(a,b)=>(ve=Z.sc)(a,b),$d=(a,b,c)=>($d=Z.tc)(a,b,c),Zd=(a,b,c,e,f)=>(Zd=Z.uc)(a,b,c,e,f),oe=(a,b,c)=>(oe=Z.vc)(a,b,c),pe=(a,b,c)=>(pe=Z.wc)(a,b,c),Xd=a=>(Xd=Z.xc)(a),de=(a,b,c,e,f,g)=>(de=Z.yc)(a,b,c,e,f,g),ee=(a,b,c)=>(ee=Z.zc)(a,b,c),fe=(a,b)=>
|
|
91
|
+
(fe=Z.Ac)(a,b),ne=(a,b,c)=>(ne=Z.Bc)(a,b,c),ie=(a,b)=>(ie=Z.Cc)(a,b),je=(a,b)=>(je=Z.Dc)(a,b),te=(a,b)=>(te=Z.Ec)(a,b),ue=a=>(ue=Z.Fc)(a),Nd=a=>(Nd=Z.Gc)(a),qe=a=>(qe=Z.Hc)(a),re=a=>(re=Z.Ic)(a),se=a=>(se=Z.Jc)(a),Ud=()=>(Ud=Z.Kc)(),Qd=()=>(Qd=Z.Lc)(),gd=(a,b,c)=>(gd=Z.Mc)(a,b,c),Sd=(a,b,c)=>(Sd=Z.Nc)(a,b,c);x.addRunDependency=Oa;x.removeRunDependency=Pa;
|
|
92
|
+
x.ERRNO_CODES={EPERM:63,ENOENT:44,ESRCH:71,EINTR:27,EIO:29,ENXIO:60,E2BIG:1,ENOEXEC:45,EBADF:8,ECHILD:12,EAGAIN:6,EWOULDBLOCK:6,ENOMEM:48,EACCES:2,EFAULT:21,ENOTBLK:105,EBUSY:10,EEXIST:20,EXDEV:75,ENODEV:43,ENOTDIR:54,EISDIR:31,EINVAL:28,ENFILE:41,EMFILE:33,ENOTTY:59,ETXTBSY:74,EFBIG:22,ENOSPC:51,ESPIPE:70,EROFS:69,EMLINK:34,EPIPE:64,EDOM:18,ERANGE:68,ENOMSG:49,EIDRM:24,ECHRNG:106,EL2NSYNC:156,EL3HLT:107,EL3RST:108,ELNRNG:109,EUNATCH:110,ENOCSI:111,EL2HLT:112,EDEADLK:16,ENOLCK:46,EBADE:113,EBADR:114,
|
|
93
|
+
EXFULL:115,ENOANO:104,EBADRQC:103,EBADSLT:102,EDEADLOCK:16,EBFONT:101,ENOSTR:100,ENODATA:116,ETIME:117,ENOSR:118,ENONET:119,ENOPKG:120,EREMOTE:121,ENOLINK:47,EADV:122,ESRMNT:123,ECOMM:124,EPROTO:65,EMULTIHOP:36,EDOTDOT:125,EBADMSG:9,ENOTUNIQ:126,EBADFD:127,EREMCHG:128,ELIBACC:129,ELIBBAD:130,ELIBSCN:131,ELIBMAX:132,ELIBEXEC:133,ENOSYS:52,ENOTEMPTY:55,ENAMETOOLONG:37,ELOOP:32,EOPNOTSUPP:138,EPFNOSUPPORT:139,ECONNRESET:15,ENOBUFS:42,EAFNOSUPPORT:5,EPROTOTYPE:67,ENOTSOCK:57,ENOPROTOOPT:50,ESHUTDOWN:140,
|
|
94
|
+
ECONNREFUSED:14,EADDRINUSE:3,ECONNABORTED:13,ENETUNREACH:40,ENETDOWN:38,ETIMEDOUT:73,EHOSTDOWN:142,EHOSTUNREACH:23,EINPROGRESS:26,EALREADY:7,EDESTADDRREQ:17,EMSGSIZE:35,EPROTONOSUPPORT:66,ESOCKTNOSUPPORT:137,EADDRNOTAVAIL:4,ENETRESET:39,EISCONN:30,ENOTCONN:53,ETOOMANYREFS:141,EUSERS:136,EDQUOT:19,ESTALE:72,ENOTSUP:138,ENOMEDIUM:148,EILSEQ:25,EOVERFLOW:61,ECANCELED:11,ENOTRECOVERABLE:56,EOWNERDEAD:62,ESTRPIPE:135};
|
|
95
|
+
x.cwrap=(a,b,c,e)=>{var f=!c||c.every(g=>"number"===g||"boolean"===g);return"string"!==b&&f&&!e?x["_"+a]:(...g)=>xe(a,b,c,g)};x.PATH=W;x.UTF8ToString=G;x.stringToUTF8=O;x.lengthBytesUTF8=P;x.FS_createPreloadedFile=Fd;x.FS_unlink=Jd;x.FS_createPath=ye;x.FS=Y;x.FS_createDataFile=zd;x.wasmfsOPFSGetOrCreateFile=ed;x.wasmfsOPFSGetOrCreateDir=fd;var ze;Na=function Ae(){ze||Be();ze||(Na=Ae)};
|
|
96
|
+
function Be(){function a(){if(!ze&&(ze=!0,x.calledRun=!0,!Ha&&(y||Jc(Ka),fa(x),x.onRuntimeInitialized?.(),!y))){if(x.postRun)for("function"==typeof x.postRun&&(x.postRun=[x.postRun]);x.postRun.length;){var b=x.postRun.shift();La.unshift(b)}Jc(La)}}if(!(0<C))if(y)fa(x),y||Jc(Ka),startWorker(x);else{if(x.preRun)for("function"==typeof x.preRun&&(x.preRun=[x.preRun]);x.preRun.length;)Ja.unshift(x.preRun.shift());Jc(Ja);0<C||(x.setStatus?(x.setStatus("Running..."),setTimeout(function(){setTimeout(function(){x.setStatus("")},
|
|
97
|
+
1);a()},1)):a())}}if(x.preInit)for("function"==typeof x.preInit&&(x.preInit=[x.preInit]);0<x.preInit.length;)x.preInit.pop()();Be();moduleRtn=ia;
|
|
98
|
+
|
|
99
|
+
|
|
100
|
+
return moduleRtn;
|
|
101
|
+
}
|
|
102
|
+
);
|
|
103
|
+
})();
|
|
104
|
+
export default QuickJSRaw;
|
|
105
|
+
var isPthread = globalThis.self?.name === 'em-pthread';
|
|
106
|
+
// When running as a pthread, construct a new instance on startup
|
|
107
|
+
isPthread && QuickJSRaw();
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@componentor/quickjs-wasmfs-release-sync",
|
|
3
3
|
"license": "MIT",
|
|
4
|
-
"version": "0.31.
|
|
4
|
+
"version": "0.31.23",
|
|
5
5
|
"description": "QuickJS variant with WasmFS and OPFS support for native filesystem access in browsers. Uses ASYNCIFY for non-blocking OPFS backend creation.",
|
|
6
6
|
"sideEffects": false,
|
|
7
7
|
"repository": {
|
|
@@ -43,10 +43,10 @@
|
|
|
43
43
|
}
|
|
44
44
|
},
|
|
45
45
|
"dependencies": {
|
|
46
|
-
"@componentor/quickjs-ffi-types": "0.31.
|
|
46
|
+
"@componentor/quickjs-ffi-types": "0.31.23"
|
|
47
47
|
},
|
|
48
48
|
"devDependencies": {
|
|
49
|
-
"@jitl/tsconfig": "0.31.
|
|
49
|
+
"@jitl/tsconfig": "0.31.23"
|
|
50
50
|
},
|
|
51
51
|
"scripts": {
|
|
52
52
|
"build": "pnpm run build:c && pnpm run build:ts",
|