@prisma-next/sql-runtime 0.3.0-pr.93.5 → 0.3.0-pr.94.1

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.
Files changed (142) hide show
  1. package/dist/exports-BI-iW86w.mjs +402 -0
  2. package/dist/exports-BI-iW86w.mjs.map +1 -0
  3. package/dist/index-Bycr1UG5.d.mts +130 -0
  4. package/dist/index-Bycr1UG5.d.mts.map +1 -0
  5. package/dist/index.d.mts +2 -0
  6. package/dist/index.mjs +3 -0
  7. package/dist/test/utils.d.mts +63 -0
  8. package/dist/test/utils.d.mts.map +1 -0
  9. package/dist/test/utils.mjs +184 -0
  10. package/dist/test/utils.mjs.map +1 -0
  11. package/package.json +22 -20
  12. package/dist/accelerate-EEKAFGN3-P6A6XJWJ.js +0 -137863
  13. package/dist/accelerate-EEKAFGN3-P6A6XJWJ.js.map +0 -1
  14. package/dist/amcheck-24VY6X5V.js +0 -13
  15. package/dist/amcheck-24VY6X5V.js.map +0 -1
  16. package/dist/bloom-VS74NLHT.js +0 -13
  17. package/dist/bloom-VS74NLHT.js.map +0 -1
  18. package/dist/btree_gin-WBC4EAAI.js +0 -13
  19. package/dist/btree_gin-WBC4EAAI.js.map +0 -1
  20. package/dist/btree_gist-UNC6QD3M.js +0 -13
  21. package/dist/btree_gist-UNC6QD3M.js.map +0 -1
  22. package/dist/chunk-3KTOEDFX.js +0 -49
  23. package/dist/chunk-3KTOEDFX.js.map +0 -1
  24. package/dist/chunk-47DZBRQC.js +0 -1280
  25. package/dist/chunk-47DZBRQC.js.map +0 -1
  26. package/dist/chunk-52N6AFZM.js +0 -133
  27. package/dist/chunk-52N6AFZM.js.map +0 -1
  28. package/dist/chunk-7D4SUZUM.js +0 -38
  29. package/dist/chunk-7D4SUZUM.js.map +0 -1
  30. package/dist/chunk-C6I3V3DM.js +0 -455
  31. package/dist/chunk-C6I3V3DM.js.map +0 -1
  32. package/dist/chunk-ECWIHLAT.js +0 -37
  33. package/dist/chunk-ECWIHLAT.js.map +0 -1
  34. package/dist/chunk-EI626SDC.js +0 -105
  35. package/dist/chunk-EI626SDC.js.map +0 -1
  36. package/dist/chunk-UKKOYUGL.js +0 -578
  37. package/dist/chunk-UKKOYUGL.js.map +0 -1
  38. package/dist/chunk-XPLNMXQV.js +0 -1537
  39. package/dist/chunk-XPLNMXQV.js.map +0 -1
  40. package/dist/citext-T7MXGUY7.js +0 -13
  41. package/dist/citext-T7MXGUY7.js.map +0 -1
  42. package/dist/client-5FENX6AW.js +0 -299
  43. package/dist/client-5FENX6AW.js.map +0 -1
  44. package/dist/codecs/decoding.d.ts +0 -4
  45. package/dist/codecs/decoding.d.ts.map +0 -1
  46. package/dist/codecs/encoding.d.ts +0 -5
  47. package/dist/codecs/encoding.d.ts.map +0 -1
  48. package/dist/codecs/validation.d.ts +0 -6
  49. package/dist/codecs/validation.d.ts.map +0 -1
  50. package/dist/cube-TFDQBZCI.js +0 -13
  51. package/dist/cube-TFDQBZCI.js.map +0 -1
  52. package/dist/dict_int-AEUOPGWP.js +0 -13
  53. package/dist/dict_int-AEUOPGWP.js.map +0 -1
  54. package/dist/dict_xsyn-DAAYX3FL.js +0 -13
  55. package/dist/dict_xsyn-DAAYX3FL.js.map +0 -1
  56. package/dist/dist-AQ3LWXOX.js +0 -570
  57. package/dist/dist-AQ3LWXOX.js.map +0 -1
  58. package/dist/dist-LBVX6BJW.js +0 -189
  59. package/dist/dist-LBVX6BJW.js.map +0 -1
  60. package/dist/dist-WLKUVDN2.js +0 -5127
  61. package/dist/dist-WLKUVDN2.js.map +0 -1
  62. package/dist/earthdistance-KIGTF4LE.js +0 -13
  63. package/dist/earthdistance-KIGTF4LE.js.map +0 -1
  64. package/dist/exports/index.d.ts +0 -11
  65. package/dist/exports/index.d.ts.map +0 -1
  66. package/dist/file_fdw-5N55UP6I.js +0 -13
  67. package/dist/file_fdw-5N55UP6I.js.map +0 -1
  68. package/dist/fuzzystrmatch-KN3YWBFP.js +0 -13
  69. package/dist/fuzzystrmatch-KN3YWBFP.js.map +0 -1
  70. package/dist/hstore-YX726NKN.js +0 -13
  71. package/dist/hstore-YX726NKN.js.map +0 -1
  72. package/dist/http-exception-FZY2H4OF.js +0 -8
  73. package/dist/http-exception-FZY2H4OF.js.map +0 -1
  74. package/dist/index.d.ts +0 -2
  75. package/dist/index.d.ts.map +0 -1
  76. package/dist/index.js +0 -30
  77. package/dist/index.js.map +0 -1
  78. package/dist/intarray-NKVXNO2D.js +0 -13
  79. package/dist/intarray-NKVXNO2D.js.map +0 -1
  80. package/dist/isn-FTEMJGEV.js +0 -13
  81. package/dist/isn-FTEMJGEV.js.map +0 -1
  82. package/dist/lo-DB7L4NGI.js +0 -13
  83. package/dist/lo-DB7L4NGI.js.map +0 -1
  84. package/dist/logger-WQ7SHNDD.js +0 -68
  85. package/dist/logger-WQ7SHNDD.js.map +0 -1
  86. package/dist/lower-sql-plan.d.ts +0 -15
  87. package/dist/lower-sql-plan.d.ts.map +0 -1
  88. package/dist/ltree-Z32TZT6W.js +0 -13
  89. package/dist/ltree-Z32TZT6W.js.map +0 -1
  90. package/dist/nodefs-NM46ACH7.js +0 -31
  91. package/dist/nodefs-NM46ACH7.js.map +0 -1
  92. package/dist/opfs-ahp-NJO33LVZ.js +0 -332
  93. package/dist/opfs-ahp-NJO33LVZ.js.map +0 -1
  94. package/dist/pageinspect-YP3IZR4X.js +0 -13
  95. package/dist/pageinspect-YP3IZR4X.js.map +0 -1
  96. package/dist/pg_buffercache-7TD5J2FB.js +0 -13
  97. package/dist/pg_buffercache-7TD5J2FB.js.map +0 -1
  98. package/dist/pg_dump-SG4KYBUB.js +0 -2492
  99. package/dist/pg_dump-SG4KYBUB.js.map +0 -1
  100. package/dist/pg_freespacemap-DZDNCPZK.js +0 -13
  101. package/dist/pg_freespacemap-DZDNCPZK.js.map +0 -1
  102. package/dist/pg_surgery-J2MUEWEP.js +0 -13
  103. package/dist/pg_surgery-J2MUEWEP.js.map +0 -1
  104. package/dist/pg_trgm-7VNQOYS6.js +0 -13
  105. package/dist/pg_trgm-7VNQOYS6.js.map +0 -1
  106. package/dist/pg_visibility-TTSIPHFL.js +0 -13
  107. package/dist/pg_visibility-TTSIPHFL.js.map +0 -1
  108. package/dist/pg_walinspect-KPFHSHRJ.js +0 -13
  109. package/dist/pg_walinspect-KPFHSHRJ.js.map +0 -1
  110. package/dist/proxy-signals-GUDAMDHV.js +0 -39
  111. package/dist/proxy-signals-GUDAMDHV.js.map +0 -1
  112. package/dist/seg-IYVDLE4O.js +0 -13
  113. package/dist/seg-IYVDLE4O.js.map +0 -1
  114. package/dist/sql-context.d.ts +0 -65
  115. package/dist/sql-context.d.ts.map +0 -1
  116. package/dist/sql-family-adapter.d.ts +0 -10
  117. package/dist/sql-family-adapter.d.ts.map +0 -1
  118. package/dist/sql-marker.d.ts +0 -22
  119. package/dist/sql-marker.d.ts.map +0 -1
  120. package/dist/sql-runtime.d.ts +0 -25
  121. package/dist/sql-runtime.d.ts.map +0 -1
  122. package/dist/tablefunc-EF4RCS7S.js +0 -13
  123. package/dist/tablefunc-EF4RCS7S.js.map +0 -1
  124. package/dist/tcn-3VT5BQYW.js +0 -13
  125. package/dist/tcn-3VT5BQYW.js.map +0 -1
  126. package/dist/test/utils.js +0 -24635
  127. package/dist/test/utils.js.map +0 -1
  128. package/dist/tiny-CW6F4GX6.js +0 -10
  129. package/dist/tiny-CW6F4GX6.js.map +0 -1
  130. package/dist/tsm_system_rows-ES7KNUQH.js +0 -13
  131. package/dist/tsm_system_rows-ES7KNUQH.js.map +0 -1
  132. package/dist/tsm_system_time-76WEIMBG.js +0 -13
  133. package/dist/tsm_system_time-76WEIMBG.js.map +0 -1
  134. package/dist/unaccent-7RYF3R64.js +0 -13
  135. package/dist/unaccent-7RYF3R64.js.map +0 -1
  136. package/dist/utility-Q5A254LJ-J4HTKZPT.js +0 -347
  137. package/dist/utility-Q5A254LJ-J4HTKZPT.js.map +0 -1
  138. package/dist/uuid_ossp-4ETE4FPE.js +0 -13
  139. package/dist/uuid_ossp-4ETE4FPE.js.map +0 -1
  140. package/dist/vector-74GPNV7V.js +0 -13
  141. package/dist/vector-74GPNV7V.js.map +0 -1
  142. package/test/tsconfig.json +0 -4
@@ -1,2492 +0,0 @@
1
- import "./chunk-7D4SUZUM.js";
2
-
3
- // ../../../node_modules/.pnpm/@electric-sql+pglite-tools@0.2.19_@electric-sql+pglite@0.3.14/node_modules/@electric-sql/pglite-tools/dist/chunk-WKZSYPH3.js
4
- var x = Object.defineProperty;
5
- var B = (e, r, t) => r in e ? x(e, r, { enumerable: true, configurable: true, writable: true, value: t }) : e[r] = t;
6
- var b = (e, r, t) => B(e, typeof r != "symbol" ? r + "" : r, t);
7
- var j = (() => {
8
- var _scriptName = import.meta.url;
9
- return async function(moduleArg = {}) {
10
- var moduleRtn, Module = moduleArg, readyPromiseResolve, readyPromiseReject, readyPromise = new Promise((e, r) => {
11
- readyPromiseResolve = e, readyPromiseReject = r;
12
- }), ENVIRONMENT_IS_WEB = typeof window == "object", ENVIRONMENT_IS_WORKER = typeof WorkerGlobalScope < "u", ENVIRONMENT_IS_NODE = typeof process == "object" && typeof process.versions == "object" && typeof process.versions.node == "string" && process.type != "renderer";
13
- if (ENVIRONMENT_IS_NODE) {
14
- let { createRequire: e } = await import("module"), r = import.meta.url;
15
- r.startsWith("data:") && (r = "/");
16
- var require = e(r);
17
- }
18
- var moduleOverrides = Object.assign({}, Module), arguments_ = [], thisProgram = "./this.program", quit_ = (e, r) => {
19
- throw r;
20
- }, scriptDirectory = "";
21
- function locateFile(e) {
22
- return Module.locateFile ? Module.locateFile(e, scriptDirectory) : scriptDirectory + e;
23
- }
24
- var readAsync, readBinary;
25
- if (ENVIRONMENT_IS_NODE) {
26
- var fs = require("fs"), nodePath = require("path");
27
- import.meta.url.startsWith("data:") || (scriptDirectory = nodePath.dirname(require("url").fileURLToPath(import.meta.url)) + "/"), readBinary = (e) => {
28
- e = isFileURI(e) ? new URL(e) : e;
29
- var r = fs.readFileSync(e);
30
- return r;
31
- }, readAsync = async (e, r = true) => {
32
- e = isFileURI(e) ? new URL(e) : e;
33
- var t = fs.readFileSync(e, r ? void 0 : "utf8");
34
- return t;
35
- }, !Module.thisProgram && process.argv.length > 1 && (thisProgram = process.argv[1].replace(/\\/g, "/")), arguments_ = process.argv.slice(2), quit_ = (e, r) => {
36
- throw process.exitCode = e, r;
37
- };
38
- } else (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && (ENVIRONMENT_IS_WORKER ? scriptDirectory = self.location.href : typeof document < "u" && document.currentScript && (scriptDirectory = document.currentScript.src), _scriptName && (scriptDirectory = _scriptName), scriptDirectory.startsWith("blob:") ? scriptDirectory = "" : scriptDirectory = scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, "").lastIndexOf("/") + 1), ENVIRONMENT_IS_WORKER && (readBinary = (e) => {
39
- var r = new XMLHttpRequest();
40
- return r.open("GET", e, false), r.responseType = "arraybuffer", r.send(null), new Uint8Array(r.response);
41
- }), readAsync = async (e) => {
42
- var r = await fetch(e, { credentials: "same-origin" });
43
- if (r.ok) return r.arrayBuffer();
44
- throw new Error(r.status + " : " + r.url);
45
- });
46
- var out = Module.print || console.log.bind(console), err = Module.printErr || console.error.bind(console);
47
- Object.assign(Module, moduleOverrides), moduleOverrides = null, Module.arguments && (arguments_ = Module.arguments), Module.thisProgram && (thisProgram = Module.thisProgram);
48
- var dynamicLibraries = Module.dynamicLibraries || [], wasmBinary = Module.wasmBinary;
49
- function intArrayFromBase64(e) {
50
- if (typeof ENVIRONMENT_IS_NODE < "u" && ENVIRONMENT_IS_NODE) {
51
- var r = Buffer.from(e, "base64");
52
- return new Uint8Array(r.buffer, r.byteOffset, r.length);
53
- }
54
- for (var t = atob(e), n = new Uint8Array(t.length), a = 0; a < t.length; ++a) n[a] = t.charCodeAt(a);
55
- return n;
56
- }
57
- var wasmMemory, ABORT = false, EXITSTATUS;
58
- function assert(e, r) {
59
- e || abort(r);
60
- }
61
- var HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAP64, HEAPU64, HEAPF64;
62
- function updateMemoryViews() {
63
- var e = wasmMemory.buffer;
64
- Module.HEAP8 = HEAP8 = new Int8Array(e), Module.HEAP16 = HEAP16 = new Int16Array(e), Module.HEAPU8 = HEAPU8 = new Uint8Array(e), Module.HEAPU16 = HEAPU16 = new Uint16Array(e), Module.HEAP32 = HEAP32 = new Int32Array(e), Module.HEAPU32 = HEAPU32 = new Uint32Array(e), Module.HEAPF32 = HEAPF32 = new Float32Array(e), Module.HEAPF64 = HEAPF64 = new Float64Array(e), Module.HEAP64 = HEAP64 = new BigInt64Array(e), Module.HEAPU64 = HEAPU64 = new BigUint64Array(e);
65
- }
66
- if (Module.wasmMemory) wasmMemory = Module.wasmMemory;
67
- else {
68
- var INITIAL_MEMORY = Module.INITIAL_MEMORY || 33554432;
69
- wasmMemory = new WebAssembly.Memory({ initial: INITIAL_MEMORY / 65536, maximum: 32768 });
70
- }
71
- updateMemoryViews();
72
- var __ATPRERUN__ = [], __ATINIT__ = [], __ATMAIN__ = [], __ATEXIT__ = [], __ATPOSTRUN__ = [], __RELOC_FUNCS__ = [], runtimeInitialized = false, runtimeExited = false;
73
- function preRun() {
74
- if (Module.preRun) for (typeof Module.preRun == "function" && (Module.preRun = [Module.preRun]); Module.preRun.length; ) addOnPreRun(Module.preRun.shift());
75
- callRuntimeCallbacks(__ATPRERUN__);
76
- }
77
- function initRuntime() {
78
- runtimeInitialized = true, callRuntimeCallbacks(__RELOC_FUNCS__), !Module.noFSInit && !FS.initialized && FS.init(), FS.ignorePermissions = false, TTY.init(), PIPEFS.root = FS.mount(PIPEFS, {}, null), SOCKFS.root = FS.mount(SOCKFS, {}, null), callRuntimeCallbacks(__ATINIT__);
79
- }
80
- function preMain() {
81
- callRuntimeCallbacks(__ATMAIN__);
82
- }
83
- function exitRuntime() {
84
- ___funcs_on_exit(), callRuntimeCallbacks(__ATEXIT__), FS.quit(), TTY.shutdown(), runtimeExited = true;
85
- }
86
- function postRun() {
87
- if (Module.postRun) for (typeof Module.postRun == "function" && (Module.postRun = [Module.postRun]); Module.postRun.length; ) addOnPostRun(Module.postRun.shift());
88
- callRuntimeCallbacks(__ATPOSTRUN__);
89
- }
90
- function addOnPreRun(e) {
91
- __ATPRERUN__.unshift(e);
92
- }
93
- function addOnInit(e) {
94
- __ATINIT__.unshift(e);
95
- }
96
- function addOnPostRun(e) {
97
- __ATPOSTRUN__.unshift(e);
98
- }
99
- var runDependencies = 0, dependenciesFulfilled = null;
100
- function getUniqueRunDependency(e) {
101
- return e;
102
- }
103
- function addRunDependency(e) {
104
- runDependencies++, Module.monitorRunDependencies?.(runDependencies);
105
- }
106
- function removeRunDependency(e) {
107
- if (runDependencies--, Module.monitorRunDependencies?.(runDependencies), runDependencies == 0 && dependenciesFulfilled) {
108
- var r = dependenciesFulfilled;
109
- dependenciesFulfilled = null, r();
110
- }
111
- }
112
- function abort(e) {
113
- Module.onAbort?.(e), e = "Aborted(" + e + ")", err(e), ABORT = true, e += ". Build with -sASSERTIONS for more info.";
114
- var r = new WebAssembly.RuntimeError(e);
115
- throw readyPromiseReject(r), r;
116
- }
117
- var dataURIPrefix = "data:application/octet-stream;base64,", isDataURI = (e) => e.startsWith(dataURIPrefix), isFileURI = (e) => e.startsWith("file://");
118
- function findWasmBinary() {
119
- if (Module.locateFile) {
120
- var e = "pg_dump.wasm";
121
- return isDataURI(e) ? e : locateFile(e);
122
- }
123
- return new URL("pg_dump.wasm", import.meta.url).href;
124
- }
125
- var wasmBinaryFile;
126
- function getBinarySync(e) {
127
- if (e == wasmBinaryFile && wasmBinary) return new Uint8Array(wasmBinary);
128
- if (readBinary) return readBinary(e);
129
- throw "both async and sync fetching of the wasm failed";
130
- }
131
- async function getWasmBinary(e) {
132
- if (!wasmBinary) try {
133
- var r = await readAsync(e);
134
- return new Uint8Array(r);
135
- } catch {
136
- }
137
- return getBinarySync(e);
138
- }
139
- async function instantiateArrayBuffer(e, r) {
140
- try {
141
- var t = await getWasmBinary(e), n = await WebAssembly.instantiate(t, r);
142
- return n;
143
- } catch (a) {
144
- err(`failed to asynchronously prepare wasm: ${a}`), abort(a);
145
- }
146
- }
147
- async function instantiateAsync(e, r, t) {
148
- if (!e && typeof WebAssembly.instantiateStreaming == "function" && !isDataURI(r) && !ENVIRONMENT_IS_NODE && typeof fetch == "function") try {
149
- var n = fetch(r, { credentials: "same-origin" }), a = await WebAssembly.instantiateStreaming(n, t);
150
- return a;
151
- } catch (o) {
152
- err(`wasm streaming compile failed: ${o}`), err("falling back to ArrayBuffer instantiation");
153
- }
154
- return instantiateArrayBuffer(r, t);
155
- }
156
- function getWasmImports() {
157
- return { env: wasmImports, wasi_snapshot_preview1: wasmImports, "GOT.mem": new Proxy(wasmImports, GOTHandler), "GOT.func": new Proxy(wasmImports, GOTHandler) };
158
- }
159
- async function createWasm() {
160
- function e(a, o) {
161
- wasmExports = a.exports, wasmExports = relocateExports(wasmExports, 1024);
162
- var s = getDylinkMetadata(o);
163
- return s.neededDynlibs && (dynamicLibraries = s.neededDynlibs.concat(dynamicLibraries)), mergeLibSymbols(wasmExports, "main"), LDSO.init(), loadDylibs(), addOnInit(wasmExports.__wasm_call_ctors), __RELOC_FUNCS__.push(wasmExports.__wasm_apply_data_relocs), removeRunDependency("wasm-instantiate"), wasmExports;
164
- }
165
- addRunDependency("wasm-instantiate");
166
- function r(a) {
167
- e(a.instance, a.module);
168
- }
169
- var t = getWasmImports();
170
- if (Module.instantiateWasm) try {
171
- return Module.instantiateWasm(t, e);
172
- } catch (a) {
173
- err(`Module.instantiateWasm callback failed with error: ${a}`), readyPromiseReject(a);
174
- }
175
- wasmBinaryFile ?? (wasmBinaryFile = findWasmBinary());
176
- try {
177
- var n = await instantiateAsync(wasmBinary, wasmBinaryFile, t);
178
- return r(n), n;
179
- } catch (a) {
180
- readyPromiseReject(a);
181
- return;
182
- }
183
- }
184
- var ASM_CONSTS = {};
185
- class ExitStatus {
186
- constructor(r) {
187
- b(this, "name", "ExitStatus");
188
- this.message = `Program terminated with exit(${r})`, this.status = r;
189
- }
190
- }
191
- var GOT = {}, currentModuleWeakSymbols = /* @__PURE__ */ new Set([]), GOTHandler = { get(e, r) {
192
- var t = GOT[r];
193
- return t || (t = GOT[r] = new WebAssembly.Global({ value: "i32", mutable: true })), currentModuleWeakSymbols.has(r) || (t.required = true), t;
194
- } }, callRuntimeCallbacks = (e) => {
195
- for (; e.length > 0; ) e.shift()(Module);
196
- }, UTF8Decoder = typeof TextDecoder < "u" ? new TextDecoder() : void 0, UTF8ArrayToString = (e, r = 0, t = NaN) => {
197
- for (var n = r + t, a = r; e[a] && !(a >= n); ) ++a;
198
- if (a - r > 16 && e.buffer && UTF8Decoder) return UTF8Decoder.decode(e.subarray(r, a));
199
- for (var o = ""; r < a; ) {
200
- var s = e[r++];
201
- if (!(s & 128)) {
202
- o += String.fromCharCode(s);
203
- continue;
204
- }
205
- var l = e[r++] & 63;
206
- if ((s & 224) == 192) {
207
- o += String.fromCharCode((s & 31) << 6 | l);
208
- continue;
209
- }
210
- var u = e[r++] & 63;
211
- if ((s & 240) == 224 ? s = (s & 15) << 12 | l << 6 | u : s = (s & 7) << 18 | l << 12 | u << 6 | e[r++] & 63, s < 65536) o += String.fromCharCode(s);
212
- else {
213
- var d = s - 65536;
214
- o += String.fromCharCode(55296 | d >> 10, 56320 | d & 1023);
215
- }
216
- }
217
- return o;
218
- }, getDylinkMetadata = (e) => {
219
- var r = 0, t = 0;
220
- function n() {
221
- return e[r++];
222
- }
223
- function a() {
224
- for (var P = 0, H = 1; ; ) {
225
- var I = e[r++];
226
- if (P += (I & 127) * H, H *= 128, !(I & 128)) break;
227
- }
228
- return P;
229
- }
230
- function o() {
231
- var P = a();
232
- return r += P, UTF8ArrayToString(e, r - P, P);
233
- }
234
- function s(P, H) {
235
- if (P) throw new Error(H);
236
- }
237
- var l = "dylink.0";
238
- if (e instanceof WebAssembly.Module) {
239
- var u = WebAssembly.Module.customSections(e, l);
240
- u.length === 0 && (l = "dylink", u = WebAssembly.Module.customSections(e, l)), s(u.length === 0, "need dylink section"), e = new Uint8Array(u[0]), t = e.length;
241
- } else {
242
- var d = new Uint32Array(new Uint8Array(e.subarray(0, 24)).buffer), c = d[0] == 1836278016;
243
- s(!c, "need to see wasm magic number"), s(e[8] !== 0, "need the dylink section to be first"), r = 9;
244
- var m = a();
245
- t = r + m, l = o();
246
- }
247
- var _ = { neededDynlibs: [], tlsExports: /* @__PURE__ */ new Set(), weakImports: /* @__PURE__ */ new Set() };
248
- if (l == "dylink") {
249
- _.memorySize = a(), _.memoryAlign = a(), _.tableSize = a(), _.tableAlign = a();
250
- for (var f = a(), S = 0; S < f; ++S) {
251
- var v = o();
252
- _.neededDynlibs.push(v);
253
- }
254
- } else {
255
- s(l !== "dylink.0");
256
- for (var F = 1, g = 2, w = 3, A = 4, y = 256, p = 3, h = 1; r < t; ) {
257
- var E = n(), M = a();
258
- if (E === F) _.memorySize = a(), _.memoryAlign = a(), _.tableSize = a(), _.tableAlign = a();
259
- else if (E === g) for (var f = a(), S = 0; S < f; ++S) v = o(), _.neededDynlibs.push(v);
260
- else if (E === w) for (var T = a(); T--; ) {
261
- var D = o(), R = a();
262
- R & y && _.tlsExports.add(D);
263
- }
264
- else if (E === A) for (var T = a(); T--; ) {
265
- var k = o(), D = o(), R = a();
266
- (R & p) == h && _.weakImports.add(D);
267
- }
268
- else r += M;
269
- }
270
- }
271
- return _;
272
- }, newDSO = (e, r, t) => {
273
- var n = { refcount: 1 / 0, name: e, exports: t, global: true };
274
- return LDSO.loadedLibsByName[e] = n, r != null && (LDSO.loadedLibsByHandle[r] = n), n;
275
- }, LDSO = { loadedLibsByName: {}, loadedLibsByHandle: {}, init() {
276
- newDSO("__main__", 0, wasmImports);
277
- } }, ___heap_base = 289952, alignMemory = (e, r) => Math.ceil(e / r) * r, getMemory = (e) => {
278
- if (runtimeInitialized) return _calloc(e, 1);
279
- var r = ___heap_base, t = r + alignMemory(e, 16);
280
- return ___heap_base = t, GOT.__heap_base.value = t, r;
281
- }, isInternalSym = (e) => ["__cpp_exception", "__c_longjmp", "__wasm_apply_data_relocs", "__dso_handle", "__tls_size", "__tls_align", "__set_stack_limits", "_emscripten_tls_init", "__wasm_init_tls", "__wasm_call_ctors", "__start_em_asm", "__stop_em_asm", "__start_em_js", "__stop_em_js"].includes(e) || e.startsWith("__em_js__"), uleb128Encode = (e, r) => {
282
- e < 128 ? r.push(e) : r.push(e % 128 | 128, e >> 7);
283
- }, sigToWasmTypes = (e) => {
284
- for (var r = { i: "i32", j: "i64", f: "f32", d: "f64", e: "externref", p: "i32" }, t = { parameters: [], results: e[0] == "v" ? [] : [r[e[0]]] }, n = 1; n < e.length; ++n) t.parameters.push(r[e[n]]);
285
- return t;
286
- }, generateFuncType = (e, r) => {
287
- var t = e.slice(0, 1), n = e.slice(1), a = { i: 127, p: 127, j: 126, f: 125, d: 124, e: 111 };
288
- r.push(96), uleb128Encode(n.length, r);
289
- for (var o = 0; o < n.length; ++o) r.push(a[n[o]]);
290
- t == "v" ? r.push(0) : r.push(1, a[t]);
291
- }, convertJsFunctionToWasm = (e, r) => {
292
- if (typeof WebAssembly.Function == "function") return new WebAssembly.Function(sigToWasmTypes(r), e);
293
- var t = [1];
294
- generateFuncType(r, t);
295
- var n = [0, 97, 115, 109, 1, 0, 0, 0, 1];
296
- uleb128Encode(t.length, n), n.push(...t), n.push(2, 7, 1, 1, 101, 1, 102, 0, 0, 7, 5, 1, 1, 102, 0, 0);
297
- var a = new WebAssembly.Module(new Uint8Array(n)), o = new WebAssembly.Instance(a, { e: { f: e } }), s = o.exports.f;
298
- return s;
299
- }, wasmTableMirror = [], wasmTable = new WebAssembly.Table({ initial: 215, element: "anyfunc" }), getWasmTableEntry = (e) => {
300
- var r = wasmTableMirror[e];
301
- return r || (e >= wasmTableMirror.length && (wasmTableMirror.length = e + 1), wasmTableMirror[e] = r = wasmTable.get(e)), r;
302
- }, updateTableMap = (e, r) => {
303
- if (functionsInTableMap) for (var t = e; t < e + r; t++) {
304
- var n = getWasmTableEntry(t);
305
- n && functionsInTableMap.set(n, t);
306
- }
307
- }, functionsInTableMap, getFunctionAddress = (e) => (functionsInTableMap || (functionsInTableMap = /* @__PURE__ */ new WeakMap(), updateTableMap(0, wasmTable.length)), functionsInTableMap.get(e) || 0), freeTableIndexes = [], getEmptyTableSlot = () => {
308
- if (freeTableIndexes.length) return freeTableIndexes.pop();
309
- try {
310
- wasmTable.grow(1);
311
- } catch (e) {
312
- throw e instanceof RangeError ? "Unable to grow wasm table. Set ALLOW_TABLE_GROWTH." : e;
313
- }
314
- return wasmTable.length - 1;
315
- }, setWasmTableEntry = (e, r) => {
316
- wasmTable.set(e, r), wasmTableMirror[e] = wasmTable.get(e);
317
- }, addFunction = (e, r) => {
318
- var t = getFunctionAddress(e);
319
- if (t) return t;
320
- var n = getEmptyTableSlot();
321
- try {
322
- setWasmTableEntry(n, e);
323
- } catch (o) {
324
- if (!(o instanceof TypeError)) throw o;
325
- var a = convertJsFunctionToWasm(e, r);
326
- setWasmTableEntry(n, a);
327
- }
328
- return functionsInTableMap.set(e, n), n;
329
- }, updateGOT = (e, r) => {
330
- for (var t in e) if (!isInternalSym(t)) {
331
- var n = e[t];
332
- GOT[t] || (GOT[t] = new WebAssembly.Global({ value: "i32", mutable: true })), (r || GOT[t].value == 0) && (typeof n == "function" ? GOT[t].value = addFunction(n) : typeof n == "number" ? GOT[t].value = n : err(`unhandled export type for '${t}': ${typeof n}`));
333
- }
334
- }, relocateExports = (e, r, t) => {
335
- var n = {};
336
- for (var a in e) {
337
- var o = e[a];
338
- typeof o == "object" && (o = o.value), typeof o == "number" && (o += r), n[a] = o;
339
- }
340
- return updateGOT(n, t), n;
341
- }, isSymbolDefined = (e) => {
342
- var r = wasmImports[e];
343
- return !(!r || r.stub);
344
- }, dynCall = (e, r, t = []) => {
345
- var n = getWasmTableEntry(r)(...t);
346
- return n;
347
- }, stackSave = () => _emscripten_stack_get_current(), stackRestore = (e) => __emscripten_stack_restore(e), createInvokeFunction = (e) => (r, ...t) => {
348
- var n = stackSave();
349
- try {
350
- return dynCall(e, r, t);
351
- } catch (a) {
352
- if (stackRestore(n), a !== a + 0) throw a;
353
- if (_setThrew(1, 0), e[0] == "j") return 0n;
354
- }
355
- }, resolveGlobalSymbol = (e, r = false) => {
356
- var t;
357
- return isSymbolDefined(e) ? t = wasmImports[e] : e.startsWith("invoke_") && (t = wasmImports[e] = createInvokeFunction(e.split("_")[1])), { sym: t, name: e };
358
- }, UTF8ToString = (e, r) => e ? UTF8ArrayToString(HEAPU8, e, r) : "", loadWebAssemblyModule = (binary, flags, libName, localScope, handle) => {
359
- var metadata = getDylinkMetadata(binary);
360
- currentModuleWeakSymbols = metadata.weakImports;
361
- function loadModule() {
362
- var firstLoad = !handle || !HEAP8[handle + 8];
363
- if (firstLoad) {
364
- var memAlign = Math.pow(2, metadata.memoryAlign), memoryBase = metadata.memorySize ? alignMemory(getMemory(metadata.memorySize + memAlign), memAlign) : 0, tableBase = metadata.tableSize ? wasmTable.length : 0;
365
- handle && (HEAP8[handle + 8] = 1, HEAPU32[handle + 12 >> 2] = memoryBase, HEAP32[handle + 16 >> 2] = metadata.memorySize, HEAPU32[handle + 20 >> 2] = tableBase, HEAP32[handle + 24 >> 2] = metadata.tableSize);
366
- } else memoryBase = HEAPU32[handle + 12 >> 2], tableBase = HEAPU32[handle + 20 >> 2];
367
- var tableGrowthNeeded = tableBase + metadata.tableSize - wasmTable.length;
368
- tableGrowthNeeded > 0 && wasmTable.grow(tableGrowthNeeded);
369
- var moduleExports;
370
- function resolveSymbol(e) {
371
- var r = resolveGlobalSymbol(e).sym;
372
- return !r && localScope && (r = localScope[e]), r || (r = moduleExports[e]), r;
373
- }
374
- var proxyHandler = { get(e, r) {
375
- switch (r) {
376
- case "__memory_base":
377
- return memoryBase;
378
- case "__table_base":
379
- return tableBase;
380
- }
381
- if (r in wasmImports && !wasmImports[r].stub) return wasmImports[r];
382
- if (!(r in e)) {
383
- var t;
384
- e[r] = (...n) => (t || (t = resolveSymbol(r)), t(...n));
385
- }
386
- return e[r];
387
- } }, proxy = new Proxy({}, proxyHandler), info = { "GOT.mem": new Proxy({}, GOTHandler), "GOT.func": new Proxy({}, GOTHandler), env: proxy, wasi_snapshot_preview1: proxy };
388
- function postInstantiation(module, instance) {
389
- updateTableMap(tableBase, metadata.tableSize), moduleExports = relocateExports(instance.exports, memoryBase), flags.allowUndefined || reportUndefinedSymbols();
390
- function addEmAsm(addr, body) {
391
- for (var args = [], arity = 0; arity < 16 && body.indexOf("$" + arity) != -1; arity++) args.push("$" + arity);
392
- args = args.join(",");
393
- var func = `(${args}) => { ${body} };`;
394
- ASM_CONSTS[start] = eval(func);
395
- }
396
- if ("__start_em_asm" in moduleExports) for (var start = moduleExports.__start_em_asm, stop = moduleExports.__stop_em_asm; start < stop; ) {
397
- var jsString = UTF8ToString(start);
398
- addEmAsm(start, jsString), start = HEAPU8.indexOf(0, start) + 1;
399
- }
400
- function addEmJs(name, cSig, body) {
401
- var jsArgs = [];
402
- if (cSig = cSig.slice(1, -1), cSig != "void") {
403
- cSig = cSig.split(",");
404
- for (var i in cSig) {
405
- var jsArg = cSig[i].split(" ").pop();
406
- jsArgs.push(jsArg.replace("*", ""));
407
- }
408
- }
409
- var func = `(${jsArgs}) => ${body};`;
410
- moduleExports[name] = eval(func);
411
- }
412
- for (var name in moduleExports) if (name.startsWith("__em_js__")) {
413
- var start = moduleExports[name], jsString = UTF8ToString(start), parts = jsString.split("<::>");
414
- addEmJs(name.replace("__em_js__", ""), parts[0], parts[1]), delete moduleExports[name];
415
- }
416
- var applyRelocs = moduleExports.__wasm_apply_data_relocs;
417
- applyRelocs && (runtimeInitialized ? applyRelocs() : __RELOC_FUNCS__.push(applyRelocs));
418
- var init = moduleExports.__wasm_call_ctors;
419
- return init && (runtimeInitialized ? init() : __ATINIT__.push(init)), moduleExports;
420
- }
421
- if (flags.loadAsync) {
422
- if (binary instanceof WebAssembly.Module) {
423
- var instance = new WebAssembly.Instance(binary, info);
424
- return Promise.resolve(postInstantiation(binary, instance));
425
- }
426
- return WebAssembly.instantiate(binary, info).then((e) => postInstantiation(e.module, e.instance));
427
- }
428
- var module = binary instanceof WebAssembly.Module ? binary : new WebAssembly.Module(binary), instance = new WebAssembly.Instance(module, info);
429
- return postInstantiation(module, instance);
430
- }
431
- return flags.loadAsync ? metadata.neededDynlibs.reduce((e, r) => e.then(() => loadDynamicLibrary(r, flags, localScope)), Promise.resolve()).then(loadModule) : (metadata.neededDynlibs.forEach((e) => loadDynamicLibrary(e, flags, localScope)), loadModule());
432
- }, mergeLibSymbols = (e, r) => {
433
- for (var [t, n] of Object.entries(e)) {
434
- let a = (s) => {
435
- isSymbolDefined(s) || (wasmImports[s] = n);
436
- };
437
- a(t);
438
- let o = "__main_argc_argv";
439
- t == "main" && a(o), t == o && a("main");
440
- }
441
- }, asyncLoad = async (e) => {
442
- var r = await readAsync(e);
443
- return new Uint8Array(r);
444
- }, preloadPlugins = Module.preloadPlugins || [], registerWasmPlugin = () => {
445
- var e = { promiseChainEnd: Promise.resolve(), canHandle: (r) => !Module.noWasmDecoding && r.endsWith(".so"), handle: (r, t, n, a) => {
446
- e.promiseChainEnd = e.promiseChainEnd.then(() => loadWebAssemblyModule(r, { loadAsync: true, nodelete: true }, t, {})).then((o) => {
447
- preloadedWasm[t] = o, n(r);
448
- }, (o) => {
449
- err(`failed to instantiate wasm: ${t}: ${o}`), a();
450
- });
451
- } };
452
- preloadPlugins.push(e);
453
- }, preloadedWasm = {};
454
- function loadDynamicLibrary(e, r = { global: true, nodelete: true }, t, n) {
455
- var a = LDSO.loadedLibsByName[e];
456
- if (a) return r.global ? a.global || (a.global = true, mergeLibSymbols(a.exports, e)) : t && Object.assign(t, a.exports), r.nodelete && a.refcount !== 1 / 0 && (a.refcount = 1 / 0), a.refcount++, n && (LDSO.loadedLibsByHandle[n] = a), r.loadAsync ? Promise.resolve(true) : true;
457
- a = newDSO(e, n, "loading"), a.refcount = r.nodelete ? 1 / 0 : 1, a.global = r.global;
458
- function o() {
459
- if (n) {
460
- var u = HEAPU32[n + 28 >> 2], d = HEAPU32[n + 32 >> 2];
461
- if (u && d) {
462
- var c = HEAP8.slice(u, u + d);
463
- return r.loadAsync ? Promise.resolve(c) : c;
464
- }
465
- }
466
- var m = locateFile(e);
467
- if (r.loadAsync) return asyncLoad(m);
468
- if (!readBinary) throw new Error(`${m}: file not found, and synchronous loading of external files is not available`);
469
- return readBinary(m);
470
- }
471
- function s() {
472
- var u = preloadedWasm[e];
473
- return u ? r.loadAsync ? Promise.resolve(u) : u : r.loadAsync ? o().then((d) => loadWebAssemblyModule(d, r, e, t, n)) : loadWebAssemblyModule(o(), r, e, t, n);
474
- }
475
- function l(u) {
476
- a.global ? mergeLibSymbols(u, e) : t && Object.assign(t, u), a.exports = u;
477
- }
478
- return r.loadAsync ? s().then((u) => (l(u), true)) : (l(s()), true);
479
- }
480
- var reportUndefinedSymbols = () => {
481
- for (var [e, r] of Object.entries(GOT)) if (r.value == 0) {
482
- var t = resolveGlobalSymbol(e, true).sym;
483
- if (!t && !r.required) continue;
484
- if (typeof t == "function") r.value = addFunction(t, t.sig);
485
- else if (typeof t == "number") r.value = t;
486
- else throw new Error(`bad export type for '${e}': ${typeof t}`);
487
- }
488
- }, loadDylibs = () => {
489
- if (!dynamicLibraries.length) {
490
- reportUndefinedSymbols();
491
- return;
492
- }
493
- addRunDependency("loadDylibs"), dynamicLibraries.reduce((e, r) => e.then(() => loadDynamicLibrary(r, { loadAsync: true, global: true, nodelete: true, allowUndefined: true })), Promise.resolve()).then(() => {
494
- reportUndefinedSymbols(), removeRunDependency("loadDylibs");
495
- });
496
- }, noExitRuntime = Module.noExitRuntime || false, ___call_sighandler = (e, r) => getWasmTableEntry(e)(r);
497
- ___call_sighandler.sig = "vpi";
498
- var ___memory_base = new WebAssembly.Global({ value: "i32", mutable: false }, 1024), ___stack_pointer = new WebAssembly.Global({ value: "i32", mutable: true }, 289952), PATH = { isAbs: (e) => e.charAt(0) === "/", splitPath: (e) => {
499
- var r = /^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;
500
- return r.exec(e).slice(1);
501
- }, normalizeArray: (e, r) => {
502
- for (var t = 0, n = e.length - 1; n >= 0; n--) {
503
- var a = e[n];
504
- a === "." ? e.splice(n, 1) : a === ".." ? (e.splice(n, 1), t++) : t && (e.splice(n, 1), t--);
505
- }
506
- if (r) for (; t; t--) e.unshift("..");
507
- return e;
508
- }, normalize: (e) => {
509
- var r = PATH.isAbs(e), t = e.substr(-1) === "/";
510
- return e = PATH.normalizeArray(e.split("/").filter((n) => !!n), !r).join("/"), !e && !r && (e = "."), e && t && (e += "/"), (r ? "/" : "") + e;
511
- }, dirname: (e) => {
512
- var r = PATH.splitPath(e), t = r[0], n = r[1];
513
- return !t && !n ? "." : (n && (n = n.substr(0, n.length - 1)), t + n);
514
- }, basename: (e) => {
515
- if (e === "/") return "/";
516
- e = PATH.normalize(e), e = e.replace(/\/$/, "");
517
- var r = e.lastIndexOf("/");
518
- return r === -1 ? e : e.substr(r + 1);
519
- }, join: (...e) => PATH.normalize(e.join("/")), join2: (e, r) => PATH.normalize(e + "/" + r) }, initRandomFill = () => {
520
- if (typeof crypto == "object" && typeof crypto.getRandomValues == "function") return (n) => crypto.getRandomValues(n);
521
- if (ENVIRONMENT_IS_NODE) try {
522
- var e = require("crypto"), r = e.randomFillSync;
523
- if (r) return (n) => e.randomFillSync(n);
524
- var t = e.randomBytes;
525
- return (n) => (n.set(t(n.byteLength)), n);
526
- } catch {
527
- }
528
- abort("initRandomDevice");
529
- }, randomFill = (e) => (randomFill = initRandomFill())(e), PATH_FS = { resolve: (...e) => {
530
- for (var r = "", t = false, n = e.length - 1; n >= -1 && !t; n--) {
531
- var a = n >= 0 ? e[n] : FS.cwd();
532
- if (typeof a != "string") throw new TypeError("Arguments to path.resolve must be strings");
533
- if (!a) return "";
534
- r = a + "/" + r, t = PATH.isAbs(a);
535
- }
536
- return r = PATH.normalizeArray(r.split("/").filter((o) => !!o), !t).join("/"), (t ? "/" : "") + r || ".";
537
- }, relative: (e, r) => {
538
- e = PATH_FS.resolve(e).substr(1), r = PATH_FS.resolve(r).substr(1);
539
- function t(d) {
540
- for (var c = 0; c < d.length && d[c] === ""; c++) ;
541
- for (var m = d.length - 1; m >= 0 && d[m] === ""; m--) ;
542
- return c > m ? [] : d.slice(c, m - c + 1);
543
- }
544
- for (var n = t(e.split("/")), a = t(r.split("/")), o = Math.min(n.length, a.length), s = o, l = 0; l < o; l++) if (n[l] !== a[l]) {
545
- s = l;
546
- break;
547
- }
548
- for (var u = [], l = s; l < n.length; l++) u.push("..");
549
- return u = u.concat(a.slice(s)), u.join("/");
550
- } }, FS_stdin_getChar_buffer = [], lengthBytesUTF8 = (e) => {
551
- for (var r = 0, t = 0; t < e.length; ++t) {
552
- var n = e.charCodeAt(t);
553
- n <= 127 ? r++ : n <= 2047 ? r += 2 : n >= 55296 && n <= 57343 ? (r += 4, ++t) : r += 3;
554
- }
555
- return r;
556
- }, stringToUTF8Array = (e, r, t, n) => {
557
- if (!(n > 0)) return 0;
558
- for (var a = t, o = t + n - 1, s = 0; s < e.length; ++s) {
559
- var l = e.charCodeAt(s);
560
- if (l >= 55296 && l <= 57343) {
561
- var u = e.charCodeAt(++s);
562
- l = 65536 + ((l & 1023) << 10) | u & 1023;
563
- }
564
- if (l <= 127) {
565
- if (t >= o) break;
566
- r[t++] = l;
567
- } else if (l <= 2047) {
568
- if (t + 1 >= o) break;
569
- r[t++] = 192 | l >> 6, r[t++] = 128 | l & 63;
570
- } else if (l <= 65535) {
571
- if (t + 2 >= o) break;
572
- r[t++] = 224 | l >> 12, r[t++] = 128 | l >> 6 & 63, r[t++] = 128 | l & 63;
573
- } else {
574
- if (t + 3 >= o) break;
575
- r[t++] = 240 | l >> 18, r[t++] = 128 | l >> 12 & 63, r[t++] = 128 | l >> 6 & 63, r[t++] = 128 | l & 63;
576
- }
577
- }
578
- return r[t] = 0, t - a;
579
- };
580
- function intArrayFromString(e, r, t) {
581
- var n = t > 0 ? t : lengthBytesUTF8(e) + 1, a = new Array(n), o = stringToUTF8Array(e, a, 0, a.length);
582
- return r && (a.length = o), a;
583
- }
584
- var FS_stdin_getChar = () => {
585
- if (!FS_stdin_getChar_buffer.length) {
586
- var e = null;
587
- if (ENVIRONMENT_IS_NODE) {
588
- var r = 256, t = Buffer.alloc(r), n = 0, a = process.stdin.fd;
589
- try {
590
- n = fs.readSync(a, t, 0, r);
591
- } catch (o) {
592
- if (o.toString().includes("EOF")) n = 0;
593
- else throw o;
594
- }
595
- n > 0 && (e = t.slice(0, n).toString("utf-8"));
596
- } else typeof window < "u" && typeof window.prompt == "function" && (e = window.prompt("Input: "), e !== null && (e += `
597
- `));
598
- if (!e) return null;
599
- FS_stdin_getChar_buffer = intArrayFromString(e, true);
600
- }
601
- return FS_stdin_getChar_buffer.shift();
602
- }, TTY = { ttys: [], init() {
603
- }, shutdown() {
604
- }, register(e, r) {
605
- TTY.ttys[e] = { input: [], output: [], ops: r }, FS.registerDevice(e, TTY.stream_ops);
606
- }, stream_ops: { open(e) {
607
- var r = TTY.ttys[e.node.rdev];
608
- if (!r) throw new FS.ErrnoError(43);
609
- e.tty = r, e.seekable = false;
610
- }, close(e) {
611
- e.tty.ops.fsync(e.tty);
612
- }, fsync(e) {
613
- e.tty.ops.fsync(e.tty);
614
- }, read(e, r, t, n, a) {
615
- if (!e.tty || !e.tty.ops.get_char) throw new FS.ErrnoError(60);
616
- for (var o = 0, s = 0; s < n; s++) {
617
- var l;
618
- try {
619
- l = e.tty.ops.get_char(e.tty);
620
- } catch {
621
- throw new FS.ErrnoError(29);
622
- }
623
- if (l === void 0 && o === 0) throw new FS.ErrnoError(6);
624
- if (l == null) break;
625
- o++, r[t + s] = l;
626
- }
627
- return o && (e.node.atime = Date.now()), o;
628
- }, write(e, r, t, n, a) {
629
- if (!e.tty || !e.tty.ops.put_char) throw new FS.ErrnoError(60);
630
- try {
631
- for (var o = 0; o < n; o++) e.tty.ops.put_char(e.tty, r[t + o]);
632
- } catch {
633
- throw new FS.ErrnoError(29);
634
- }
635
- return n && (e.node.mtime = e.node.ctime = Date.now()), o;
636
- } }, default_tty_ops: { get_char(e) {
637
- return FS_stdin_getChar();
638
- }, put_char(e, r) {
639
- r === null || r === 10 ? (out(UTF8ArrayToString(e.output)), e.output = []) : r != 0 && e.output.push(r);
640
- }, fsync(e) {
641
- e.output && e.output.length > 0 && (out(UTF8ArrayToString(e.output)), e.output = []);
642
- }, ioctl_tcgets(e) {
643
- return { c_iflag: 25856, c_oflag: 5, c_cflag: 191, c_lflag: 35387, c_cc: [3, 28, 127, 21, 4, 0, 1, 0, 17, 19, 26, 0, 18, 15, 23, 22, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0] };
644
- }, ioctl_tcsets(e, r, t) {
645
- return 0;
646
- }, ioctl_tiocgwinsz(e) {
647
- return [24, 80];
648
- } }, default_tty1_ops: { put_char(e, r) {
649
- r === null || r === 10 ? (err(UTF8ArrayToString(e.output)), e.output = []) : r != 0 && e.output.push(r);
650
- }, fsync(e) {
651
- e.output && e.output.length > 0 && (err(UTF8ArrayToString(e.output)), e.output = []);
652
- } } }, zeroMemory = (e, r) => {
653
- HEAPU8.fill(0, e, e + r);
654
- }, mmapAlloc = (e) => {
655
- abort();
656
- }, MEMFS = { ops_table: null, mount(e) {
657
- return MEMFS.createNode(null, "/", 16895, 0);
658
- }, createNode(e, r, t, n) {
659
- if (FS.isBlkdev(t) || FS.isFIFO(t)) throw new FS.ErrnoError(63);
660
- MEMFS.ops_table || (MEMFS.ops_table = { dir: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, lookup: MEMFS.node_ops.lookup, mknod: MEMFS.node_ops.mknod, rename: MEMFS.node_ops.rename, unlink: MEMFS.node_ops.unlink, rmdir: MEMFS.node_ops.rmdir, readdir: MEMFS.node_ops.readdir, symlink: MEMFS.node_ops.symlink }, stream: { llseek: MEMFS.stream_ops.llseek } }, file: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: { llseek: MEMFS.stream_ops.llseek, read: MEMFS.stream_ops.read, write: MEMFS.stream_ops.write, allocate: MEMFS.stream_ops.allocate, mmap: MEMFS.stream_ops.mmap, msync: MEMFS.stream_ops.msync } }, link: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr, readlink: MEMFS.node_ops.readlink }, stream: {} }, chrdev: { node: { getattr: MEMFS.node_ops.getattr, setattr: MEMFS.node_ops.setattr }, stream: FS.chrdev_stream_ops } });
661
- var a = FS.createNode(e, r, t, n);
662
- return FS.isDir(a.mode) ? (a.node_ops = MEMFS.ops_table.dir.node, a.stream_ops = MEMFS.ops_table.dir.stream, a.contents = {}) : FS.isFile(a.mode) ? (a.node_ops = MEMFS.ops_table.file.node, a.stream_ops = MEMFS.ops_table.file.stream, a.usedBytes = 0, a.contents = null) : FS.isLink(a.mode) ? (a.node_ops = MEMFS.ops_table.link.node, a.stream_ops = MEMFS.ops_table.link.stream) : FS.isChrdev(a.mode) && (a.node_ops = MEMFS.ops_table.chrdev.node, a.stream_ops = MEMFS.ops_table.chrdev.stream), a.atime = a.mtime = a.ctime = Date.now(), e && (e.contents[r] = a, e.atime = e.mtime = e.ctime = a.atime), a;
663
- }, getFileDataAsTypedArray(e) {
664
- return e.contents ? e.contents.subarray ? e.contents.subarray(0, e.usedBytes) : new Uint8Array(e.contents) : new Uint8Array(0);
665
- }, expandFileStorage(e, r) {
666
- var t = e.contents ? e.contents.length : 0;
667
- if (!(t >= r)) {
668
- var n = 1024 * 1024;
669
- r = Math.max(r, t * (t < n ? 2 : 1.125) >>> 0), t != 0 && (r = Math.max(r, 256));
670
- var a = e.contents;
671
- e.contents = new Uint8Array(r), e.usedBytes > 0 && e.contents.set(a.subarray(0, e.usedBytes), 0);
672
- }
673
- }, resizeFileStorage(e, r) {
674
- if (e.usedBytes != r) if (r == 0) e.contents = null, e.usedBytes = 0;
675
- else {
676
- var t = e.contents;
677
- e.contents = new Uint8Array(r), t && e.contents.set(t.subarray(0, Math.min(r, e.usedBytes))), e.usedBytes = r;
678
- }
679
- }, node_ops: { getattr(e) {
680
- var r = {};
681
- return r.dev = FS.isChrdev(e.mode) ? e.id : 1, r.ino = e.id, r.mode = e.mode, r.nlink = 1, r.uid = 0, r.gid = 0, r.rdev = e.rdev, FS.isDir(e.mode) ? r.size = 4096 : FS.isFile(e.mode) ? r.size = e.usedBytes : FS.isLink(e.mode) ? r.size = e.link.length : r.size = 0, r.atime = new Date(e.atime), r.mtime = new Date(e.mtime), r.ctime = new Date(e.ctime), r.blksize = 4096, r.blocks = Math.ceil(r.size / r.blksize), r;
682
- }, setattr(e, r) {
683
- for (let t of ["mode", "atime", "mtime", "ctime"]) r[t] && (e[t] = r[t]);
684
- r.size !== void 0 && MEMFS.resizeFileStorage(e, r.size);
685
- }, lookup(e, r) {
686
- throw MEMFS.doesNotExistError;
687
- }, mknod(e, r, t, n) {
688
- return MEMFS.createNode(e, r, t, n);
689
- }, rename(e, r, t) {
690
- var n;
691
- try {
692
- n = FS.lookupNode(r, t);
693
- } catch {
694
- }
695
- if (n) {
696
- if (FS.isDir(e.mode)) for (var a in n.contents) throw new FS.ErrnoError(55);
697
- FS.hashRemoveNode(n);
698
- }
699
- delete e.parent.contents[e.name], r.contents[t] = e, e.name = t, r.ctime = r.mtime = e.parent.ctime = e.parent.mtime = Date.now();
700
- }, unlink(e, r) {
701
- delete e.contents[r], e.ctime = e.mtime = Date.now();
702
- }, rmdir(e, r) {
703
- var t = FS.lookupNode(e, r);
704
- for (var n in t.contents) throw new FS.ErrnoError(55);
705
- delete e.contents[r], e.ctime = e.mtime = Date.now();
706
- }, readdir(e) {
707
- return [".", "..", ...Object.keys(e.contents)];
708
- }, symlink(e, r, t) {
709
- var n = MEMFS.createNode(e, r, 41471, 0);
710
- return n.link = t, n;
711
- }, readlink(e) {
712
- if (!FS.isLink(e.mode)) throw new FS.ErrnoError(28);
713
- return e.link;
714
- } }, stream_ops: { read(e, r, t, n, a) {
715
- var o = e.node.contents;
716
- if (a >= e.node.usedBytes) return 0;
717
- var s = Math.min(e.node.usedBytes - a, n);
718
- if (s > 8 && o.subarray) r.set(o.subarray(a, a + s), t);
719
- else for (var l = 0; l < s; l++) r[t + l] = o[a + l];
720
- return s;
721
- }, write(e, r, t, n, a, o) {
722
- if (r.buffer === HEAP8.buffer && (o = false), !n) return 0;
723
- var s = e.node;
724
- if (s.mtime = s.ctime = Date.now(), r.subarray && (!s.contents || s.contents.subarray)) {
725
- if (o) return s.contents = r.subarray(t, t + n), s.usedBytes = n, n;
726
- if (s.usedBytes === 0 && a === 0) return s.contents = r.slice(t, t + n), s.usedBytes = n, n;
727
- if (a + n <= s.usedBytes) return s.contents.set(r.subarray(t, t + n), a), n;
728
- }
729
- if (MEMFS.expandFileStorage(s, a + n), s.contents.subarray && r.subarray) s.contents.set(r.subarray(t, t + n), a);
730
- else for (var l = 0; l < n; l++) s.contents[a + l] = r[t + l];
731
- return s.usedBytes = Math.max(s.usedBytes, a + n), n;
732
- }, llseek(e, r, t) {
733
- var n = r;
734
- if (t === 1 ? n += e.position : t === 2 && FS.isFile(e.node.mode) && (n += e.node.usedBytes), n < 0) throw new FS.ErrnoError(28);
735
- return n;
736
- }, allocate(e, r, t) {
737
- MEMFS.expandFileStorage(e.node, r + t), e.node.usedBytes = Math.max(e.node.usedBytes, r + t);
738
- }, mmap(e, r, t, n, a) {
739
- if (!FS.isFile(e.node.mode)) throw new FS.ErrnoError(43);
740
- var o, s, l = e.node.contents;
741
- if (!(a & 2) && l && l.buffer === HEAP8.buffer) s = false, o = l.byteOffset;
742
- else {
743
- if (s = true, o = mmapAlloc(r), !o) throw new FS.ErrnoError(48);
744
- l && ((t > 0 || t + r < l.length) && (l.subarray ? l = l.subarray(t, t + r) : l = Array.prototype.slice.call(l, t, t + r)), HEAP8.set(l, o));
745
- }
746
- return { ptr: o, allocated: s };
747
- }, msync(e, r, t, n, a) {
748
- return MEMFS.stream_ops.write(e, r, 0, n, t, false), 0;
749
- } } }, FS_createDataFile = (e, r, t, n, a, o) => {
750
- FS.createDataFile(e, r, t, n, a, o);
751
- }, FS_handledByPreloadPlugin = (e, r, t, n) => {
752
- typeof Browser < "u" && Browser.init();
753
- var a = false;
754
- return preloadPlugins.forEach((o) => {
755
- a || o.canHandle(r) && (o.handle(e, r, t, n), a = true);
756
- }), a;
757
- }, FS_createPreloadedFile = (e, r, t, n, a, o, s, l, u, d) => {
758
- var c = r ? PATH_FS.resolve(PATH.join2(e, r)) : e, m = `cp ${c}`;
759
- function _(f) {
760
- function S(v) {
761
- d?.(), l || FS_createDataFile(e, r, v, n, a, u), o?.(), removeRunDependency(m);
762
- }
763
- FS_handledByPreloadPlugin(f, c, S, () => {
764
- s?.(), removeRunDependency(m);
765
- }) || S(f);
766
- }
767
- addRunDependency(m), typeof t == "string" ? asyncLoad(t).then(_, s) : _(t);
768
- }, FS_modeStringToFlags = (e) => {
769
- var r = { r: 0, "r+": 2, w: 577, "w+": 578, a: 1089, "a+": 1090 }, t = r[e];
770
- if (typeof t > "u") throw new Error(`Unknown file open mode: ${e}`);
771
- return t;
772
- }, FS_getMode = (e, r) => {
773
- var t = 0;
774
- return e && (t |= 365), r && (t |= 146), t;
775
- }, FS = { root: null, mounts: [], devices: {}, streams: [], nextInode: 1, nameTable: null, currentPath: "/", initialized: false, ignorePermissions: true, ErrnoError: class {
776
- constructor(e) {
777
- b(this, "name", "ErrnoError");
778
- this.errno = e;
779
- }
780
- }, filesystems: null, syncFSRequests: 0, readFiles: {}, FSStream: class {
781
- constructor() {
782
- b(this, "shared", {});
783
- }
784
- get object() {
785
- return this.node;
786
- }
787
- set object(e) {
788
- this.node = e;
789
- }
790
- get isRead() {
791
- return (this.flags & 2097155) !== 1;
792
- }
793
- get isWrite() {
794
- return (this.flags & 2097155) !== 0;
795
- }
796
- get isAppend() {
797
- return this.flags & 1024;
798
- }
799
- get flags() {
800
- return this.shared.flags;
801
- }
802
- set flags(e) {
803
- this.shared.flags = e;
804
- }
805
- get position() {
806
- return this.shared.position;
807
- }
808
- set position(e) {
809
- this.shared.position = e;
810
- }
811
- }, FSNode: class {
812
- constructor(e, r, t, n) {
813
- b(this, "node_ops", {});
814
- b(this, "stream_ops", {});
815
- b(this, "readMode", 365);
816
- b(this, "writeMode", 146);
817
- b(this, "mounted", null);
818
- e || (e = this), this.parent = e, this.mount = e.mount, this.id = FS.nextInode++, this.name = r, this.mode = t, this.rdev = n, this.atime = this.mtime = this.ctime = Date.now();
819
- }
820
- get read() {
821
- return (this.mode & this.readMode) === this.readMode;
822
- }
823
- set read(e) {
824
- e ? this.mode |= this.readMode : this.mode &= ~this.readMode;
825
- }
826
- get write() {
827
- return (this.mode & this.writeMode) === this.writeMode;
828
- }
829
- set write(e) {
830
- e ? this.mode |= this.writeMode : this.mode &= ~this.writeMode;
831
- }
832
- get isFolder() {
833
- return FS.isDir(this.mode);
834
- }
835
- get isDevice() {
836
- return FS.isChrdev(this.mode);
837
- }
838
- }, lookupPath(e, r = {}) {
839
- if (!e) return { path: "", node: null };
840
- r.follow_mount ?? (r.follow_mount = true), PATH.isAbs(e) || (e = FS.cwd() + "/" + e);
841
- e: for (var t = 0; t < 40; t++) {
842
- for (var n = e.split("/").filter((d) => !!d && d !== "."), a = FS.root, o = "/", s = 0; s < n.length; s++) {
843
- var l = s === n.length - 1;
844
- if (l && r.parent) break;
845
- if (n[s] === "..") {
846
- o = PATH.dirname(o), a = a.parent;
847
- continue;
848
- }
849
- o = PATH.join2(o, n[s]);
850
- try {
851
- a = FS.lookupNode(a, n[s]);
852
- } catch (d) {
853
- if (d?.errno === 44 && l && r.noent_okay) return { path: o };
854
- throw d;
855
- }
856
- if (FS.isMountpoint(a) && (!l || r.follow_mount) && (a = a.mounted.root), FS.isLink(a.mode) && (!l || r.follow)) {
857
- if (!a.node_ops.readlink) throw new FS.ErrnoError(52);
858
- var u = a.node_ops.readlink(a);
859
- PATH.isAbs(u) || (u = PATH.dirname(o) + "/" + u), e = u + "/" + n.slice(s + 1).join("/");
860
- continue e;
861
- }
862
- }
863
- return { path: o, node: a };
864
- }
865
- throw new FS.ErrnoError(32);
866
- }, getPath(e) {
867
- for (var r; ; ) {
868
- if (FS.isRoot(e)) {
869
- var t = e.mount.mountpoint;
870
- return r ? t[t.length - 1] !== "/" ? `${t}/${r}` : t + r : t;
871
- }
872
- r = r ? `${e.name}/${r}` : e.name, e = e.parent;
873
- }
874
- }, hashName(e, r) {
875
- for (var t = 0, n = 0; n < r.length; n++) t = (t << 5) - t + r.charCodeAt(n) | 0;
876
- return (e + t >>> 0) % FS.nameTable.length;
877
- }, hashAddNode(e) {
878
- var r = FS.hashName(e.parent.id, e.name);
879
- e.name_next = FS.nameTable[r], FS.nameTable[r] = e;
880
- }, hashRemoveNode(e) {
881
- var r = FS.hashName(e.parent.id, e.name);
882
- if (FS.nameTable[r] === e) FS.nameTable[r] = e.name_next;
883
- else for (var t = FS.nameTable[r]; t; ) {
884
- if (t.name_next === e) {
885
- t.name_next = e.name_next;
886
- break;
887
- }
888
- t = t.name_next;
889
- }
890
- }, lookupNode(e, r) {
891
- var t = FS.mayLookup(e);
892
- if (t) throw new FS.ErrnoError(t);
893
- for (var n = FS.hashName(e.id, r), a = FS.nameTable[n]; a; a = a.name_next) {
894
- var o = a.name;
895
- if (a.parent.id === e.id && o === r) return a;
896
- }
897
- return FS.lookup(e, r);
898
- }, createNode(e, r, t, n) {
899
- var a = new FS.FSNode(e, r, t, n);
900
- return FS.hashAddNode(a), a;
901
- }, destroyNode(e) {
902
- FS.hashRemoveNode(e);
903
- }, isRoot(e) {
904
- return e === e.parent;
905
- }, isMountpoint(e) {
906
- return !!e.mounted;
907
- }, isFile(e) {
908
- return (e & 61440) === 32768;
909
- }, isDir(e) {
910
- return (e & 61440) === 16384;
911
- }, isLink(e) {
912
- return (e & 61440) === 40960;
913
- }, isChrdev(e) {
914
- return (e & 61440) === 8192;
915
- }, isBlkdev(e) {
916
- return (e & 61440) === 24576;
917
- }, isFIFO(e) {
918
- return (e & 61440) === 4096;
919
- }, isSocket(e) {
920
- return (e & 49152) === 49152;
921
- }, flagsToPermissionString(e) {
922
- var r = ["r", "w", "rw"][e & 3];
923
- return e & 512 && (r += "w"), r;
924
- }, nodePermissions(e, r) {
925
- return FS.ignorePermissions ? 0 : r.includes("r") && !(e.mode & 292) || r.includes("w") && !(e.mode & 146) || r.includes("x") && !(e.mode & 73) ? 2 : 0;
926
- }, mayLookup(e) {
927
- if (!FS.isDir(e.mode)) return 54;
928
- var r = FS.nodePermissions(e, "x");
929
- return r || (e.node_ops.lookup ? 0 : 2);
930
- }, mayCreate(e, r) {
931
- if (!FS.isDir(e.mode)) return 54;
932
- try {
933
- var t = FS.lookupNode(e, r);
934
- return 20;
935
- } catch {
936
- }
937
- return FS.nodePermissions(e, "wx");
938
- }, mayDelete(e, r, t) {
939
- var n;
940
- try {
941
- n = FS.lookupNode(e, r);
942
- } catch (o) {
943
- return o.errno;
944
- }
945
- var a = FS.nodePermissions(e, "wx");
946
- if (a) return a;
947
- if (t) {
948
- if (!FS.isDir(n.mode)) return 54;
949
- if (FS.isRoot(n) || FS.getPath(n) === FS.cwd()) return 10;
950
- } else if (FS.isDir(n.mode)) return 31;
951
- return 0;
952
- }, mayOpen(e, r) {
953
- return e ? FS.isLink(e.mode) ? 32 : FS.isDir(e.mode) && (FS.flagsToPermissionString(r) !== "r" || r & 512) ? 31 : FS.nodePermissions(e, FS.flagsToPermissionString(r)) : 44;
954
- }, MAX_OPEN_FDS: 4096, nextfd() {
955
- for (var e = 0; e <= FS.MAX_OPEN_FDS; e++) if (!FS.streams[e]) return e;
956
- throw new FS.ErrnoError(33);
957
- }, getStreamChecked(e) {
958
- var r = FS.getStream(e);
959
- if (!r) throw new FS.ErrnoError(8);
960
- return r;
961
- }, getStream: (e) => FS.streams[e], createStream(e, r = -1) {
962
- return e = Object.assign(new FS.FSStream(), e), r == -1 && (r = FS.nextfd()), e.fd = r, FS.streams[r] = e, e;
963
- }, closeStream(e) {
964
- FS.streams[e] = null;
965
- }, dupStream(e, r = -1) {
966
- var t = FS.createStream(e, r);
967
- return t.stream_ops?.dup?.(t), t;
968
- }, chrdev_stream_ops: { open(e) {
969
- var r = FS.getDevice(e.node.rdev);
970
- e.stream_ops = r.stream_ops, e.stream_ops.open?.(e);
971
- }, llseek() {
972
- throw new FS.ErrnoError(70);
973
- } }, major: (e) => e >> 8, minor: (e) => e & 255, makedev: (e, r) => e << 8 | r, registerDevice(e, r) {
974
- FS.devices[e] = { stream_ops: r };
975
- }, getDevice: (e) => FS.devices[e], getMounts(e) {
976
- for (var r = [], t = [e]; t.length; ) {
977
- var n = t.pop();
978
- r.push(n), t.push(...n.mounts);
979
- }
980
- return r;
981
- }, syncfs(e, r) {
982
- typeof e == "function" && (r = e, e = false), FS.syncFSRequests++, FS.syncFSRequests > 1 && err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`);
983
- var t = FS.getMounts(FS.root.mount), n = 0;
984
- function a(s) {
985
- return FS.syncFSRequests--, r(s);
986
- }
987
- function o(s) {
988
- if (s) return o.errored ? void 0 : (o.errored = true, a(s));
989
- ++n >= t.length && a(null);
990
- }
991
- t.forEach((s) => {
992
- if (!s.type.syncfs) return o(null);
993
- s.type.syncfs(s, e, o);
994
- });
995
- }, mount(e, r, t) {
996
- var n = t === "/", a = !t, o;
997
- if (n && FS.root) throw new FS.ErrnoError(10);
998
- if (!n && !a) {
999
- var s = FS.lookupPath(t, { follow_mount: false });
1000
- if (t = s.path, o = s.node, FS.isMountpoint(o)) throw new FS.ErrnoError(10);
1001
- if (!FS.isDir(o.mode)) throw new FS.ErrnoError(54);
1002
- }
1003
- var l = { type: e, opts: r, mountpoint: t, mounts: [] }, u = e.mount(l);
1004
- return u.mount = l, l.root = u, n ? FS.root = u : o && (o.mounted = l, o.mount && o.mount.mounts.push(l)), u;
1005
- }, unmount(e) {
1006
- var r = FS.lookupPath(e, { follow_mount: false });
1007
- if (!FS.isMountpoint(r.node)) throw new FS.ErrnoError(28);
1008
- var t = r.node, n = t.mounted, a = FS.getMounts(n);
1009
- Object.keys(FS.nameTable).forEach((s) => {
1010
- for (var l = FS.nameTable[s]; l; ) {
1011
- var u = l.name_next;
1012
- a.includes(l.mount) && FS.destroyNode(l), l = u;
1013
- }
1014
- }), t.mounted = null;
1015
- var o = t.mount.mounts.indexOf(n);
1016
- t.mount.mounts.splice(o, 1);
1017
- }, lookup(e, r) {
1018
- return e.node_ops.lookup(e, r);
1019
- }, mknod(e, r, t) {
1020
- var n = FS.lookupPath(e, { parent: true }), a = n.node, o = PATH.basename(e);
1021
- if (!o || o === "." || o === "..") throw new FS.ErrnoError(28);
1022
- var s = FS.mayCreate(a, o);
1023
- if (s) throw new FS.ErrnoError(s);
1024
- if (!a.node_ops.mknod) throw new FS.ErrnoError(63);
1025
- return a.node_ops.mknod(a, o, r, t);
1026
- }, statfs(e) {
1027
- var r = { bsize: 4096, frsize: 4096, blocks: 1e6, bfree: 5e5, bavail: 5e5, files: FS.nextInode, ffree: FS.nextInode - 1, fsid: 42, flags: 2, namelen: 255 }, t = FS.lookupPath(e, { follow: true }).node;
1028
- return t?.node_ops.statfs && Object.assign(r, t.node_ops.statfs(t.mount.opts.root)), r;
1029
- }, create(e, r = 438) {
1030
- return r &= 4095, r |= 32768, FS.mknod(e, r, 0);
1031
- }, mkdir(e, r = 511) {
1032
- return r &= 1023, r |= 16384, FS.mknod(e, r, 0);
1033
- }, mkdirTree(e, r) {
1034
- for (var t = e.split("/"), n = "", a = 0; a < t.length; ++a) if (t[a]) {
1035
- n += "/" + t[a];
1036
- try {
1037
- FS.mkdir(n, r);
1038
- } catch (o) {
1039
- if (o.errno != 20) throw o;
1040
- }
1041
- }
1042
- }, mkdev(e, r, t) {
1043
- return typeof t > "u" && (t = r, r = 438), r |= 8192, FS.mknod(e, r, t);
1044
- }, symlink(e, r) {
1045
- if (!PATH_FS.resolve(e)) throw new FS.ErrnoError(44);
1046
- var t = FS.lookupPath(r, { parent: true }), n = t.node;
1047
- if (!n) throw new FS.ErrnoError(44);
1048
- var a = PATH.basename(r), o = FS.mayCreate(n, a);
1049
- if (o) throw new FS.ErrnoError(o);
1050
- if (!n.node_ops.symlink) throw new FS.ErrnoError(63);
1051
- return n.node_ops.symlink(n, a, e);
1052
- }, rename(e, r) {
1053
- var t = PATH.dirname(e), n = PATH.dirname(r), a = PATH.basename(e), o = PATH.basename(r), s, l, u;
1054
- if (s = FS.lookupPath(e, { parent: true }), l = s.node, s = FS.lookupPath(r, { parent: true }), u = s.node, !l || !u) throw new FS.ErrnoError(44);
1055
- if (l.mount !== u.mount) throw new FS.ErrnoError(75);
1056
- var d = FS.lookupNode(l, a), c = PATH_FS.relative(e, n);
1057
- if (c.charAt(0) !== ".") throw new FS.ErrnoError(28);
1058
- if (c = PATH_FS.relative(r, t), c.charAt(0) !== ".") throw new FS.ErrnoError(55);
1059
- var m;
1060
- try {
1061
- m = FS.lookupNode(u, o);
1062
- } catch {
1063
- }
1064
- if (d !== m) {
1065
- var _ = FS.isDir(d.mode), f = FS.mayDelete(l, a, _);
1066
- if (f) throw new FS.ErrnoError(f);
1067
- if (f = m ? FS.mayDelete(u, o, _) : FS.mayCreate(u, o), f) throw new FS.ErrnoError(f);
1068
- if (!l.node_ops.rename) throw new FS.ErrnoError(63);
1069
- if (FS.isMountpoint(d) || m && FS.isMountpoint(m)) throw new FS.ErrnoError(10);
1070
- if (u !== l && (f = FS.nodePermissions(l, "w"), f)) throw new FS.ErrnoError(f);
1071
- FS.hashRemoveNode(d);
1072
- try {
1073
- l.node_ops.rename(d, u, o), d.parent = u;
1074
- } catch (S) {
1075
- throw S;
1076
- } finally {
1077
- FS.hashAddNode(d);
1078
- }
1079
- }
1080
- }, rmdir(e) {
1081
- var r = FS.lookupPath(e, { parent: true }), t = r.node, n = PATH.basename(e), a = FS.lookupNode(t, n), o = FS.mayDelete(t, n, true);
1082
- if (o) throw new FS.ErrnoError(o);
1083
- if (!t.node_ops.rmdir) throw new FS.ErrnoError(63);
1084
- if (FS.isMountpoint(a)) throw new FS.ErrnoError(10);
1085
- t.node_ops.rmdir(t, n), FS.destroyNode(a);
1086
- }, readdir(e) {
1087
- var r = FS.lookupPath(e, { follow: true }), t = r.node;
1088
- if (!t.node_ops.readdir) throw new FS.ErrnoError(54);
1089
- return t.node_ops.readdir(t);
1090
- }, unlink(e) {
1091
- var r = FS.lookupPath(e, { parent: true }), t = r.node;
1092
- if (!t) throw new FS.ErrnoError(44);
1093
- var n = PATH.basename(e), a = FS.lookupNode(t, n), o = FS.mayDelete(t, n, false);
1094
- if (o) throw new FS.ErrnoError(o);
1095
- if (!t.node_ops.unlink) throw new FS.ErrnoError(63);
1096
- if (FS.isMountpoint(a)) throw new FS.ErrnoError(10);
1097
- t.node_ops.unlink(t, n), FS.destroyNode(a);
1098
- }, readlink(e) {
1099
- var r = FS.lookupPath(e), t = r.node;
1100
- if (!t) throw new FS.ErrnoError(44);
1101
- if (!t.node_ops.readlink) throw new FS.ErrnoError(28);
1102
- return t.node_ops.readlink(t);
1103
- }, stat(e, r) {
1104
- var t = FS.lookupPath(e, { follow: !r }), n = t.node;
1105
- if (!n) throw new FS.ErrnoError(44);
1106
- if (!n.node_ops.getattr) throw new FS.ErrnoError(63);
1107
- return n.node_ops.getattr(n);
1108
- }, lstat(e) {
1109
- return FS.stat(e, true);
1110
- }, chmod(e, r, t) {
1111
- var n;
1112
- if (typeof e == "string") {
1113
- var a = FS.lookupPath(e, { follow: !t });
1114
- n = a.node;
1115
- } else n = e;
1116
- if (!n.node_ops.setattr) throw new FS.ErrnoError(63);
1117
- n.node_ops.setattr(n, { mode: r & 4095 | n.mode & -4096, ctime: Date.now() });
1118
- }, lchmod(e, r) {
1119
- FS.chmod(e, r, true);
1120
- }, fchmod(e, r) {
1121
- var t = FS.getStreamChecked(e);
1122
- FS.chmod(t.node, r);
1123
- }, chown(e, r, t, n) {
1124
- var a;
1125
- if (typeof e == "string") {
1126
- var o = FS.lookupPath(e, { follow: !n });
1127
- a = o.node;
1128
- } else a = e;
1129
- if (!a.node_ops.setattr) throw new FS.ErrnoError(63);
1130
- a.node_ops.setattr(a, { timestamp: Date.now() });
1131
- }, lchown(e, r, t) {
1132
- FS.chown(e, r, t, true);
1133
- }, fchown(e, r, t) {
1134
- var n = FS.getStreamChecked(e);
1135
- FS.chown(n.node, r, t);
1136
- }, truncate(e, r) {
1137
- if (r < 0) throw new FS.ErrnoError(28);
1138
- var t;
1139
- if (typeof e == "string") {
1140
- var n = FS.lookupPath(e, { follow: true });
1141
- t = n.node;
1142
- } else t = e;
1143
- if (!t.node_ops.setattr) throw new FS.ErrnoError(63);
1144
- if (FS.isDir(t.mode)) throw new FS.ErrnoError(31);
1145
- if (!FS.isFile(t.mode)) throw new FS.ErrnoError(28);
1146
- var a = FS.nodePermissions(t, "w");
1147
- if (a) throw new FS.ErrnoError(a);
1148
- t.node_ops.setattr(t, { size: r, timestamp: Date.now() });
1149
- }, ftruncate(e, r) {
1150
- var t = FS.getStreamChecked(e);
1151
- if (!(t.flags & 2097155)) throw new FS.ErrnoError(28);
1152
- FS.truncate(t.node, r);
1153
- }, utime(e, r, t) {
1154
- var n = FS.lookupPath(e, { follow: true }), a = n.node;
1155
- a.node_ops.setattr(a, { atime: r, mtime: t });
1156
- }, open(e, r, t = 438) {
1157
- if (e === "") throw new FS.ErrnoError(44);
1158
- r = typeof r == "string" ? FS_modeStringToFlags(r) : r, r & 64 ? t = t & 4095 | 32768 : t = 0;
1159
- var n;
1160
- if (typeof e == "object") n = e;
1161
- else {
1162
- var a = FS.lookupPath(e, { follow: !(r & 131072), noent_okay: true });
1163
- n = a.node, e = a.path;
1164
- }
1165
- var o = false;
1166
- if (r & 64) if (n) {
1167
- if (r & 128) throw new FS.ErrnoError(20);
1168
- } else n = FS.mknod(e, t, 0), o = true;
1169
- if (!n) throw new FS.ErrnoError(44);
1170
- if (FS.isChrdev(n.mode) && (r &= -513), r & 65536 && !FS.isDir(n.mode)) throw new FS.ErrnoError(54);
1171
- if (!o) {
1172
- var s = FS.mayOpen(n, r);
1173
- if (s) throw new FS.ErrnoError(s);
1174
- }
1175
- r & 512 && !o && FS.truncate(n, 0), r &= -131713;
1176
- var l = FS.createStream({ node: n, path: FS.getPath(n), flags: r, seekable: true, position: 0, stream_ops: n.stream_ops, ungotten: [], error: false });
1177
- return l.stream_ops.open && l.stream_ops.open(l), Module.logReadFiles && !(r & 1) && (e in FS.readFiles || (FS.readFiles[e] = 1)), l;
1178
- }, close(e) {
1179
- if (FS.isClosed(e)) throw new FS.ErrnoError(8);
1180
- e.getdents && (e.getdents = null);
1181
- try {
1182
- e.stream_ops.close && e.stream_ops.close(e);
1183
- } catch (r) {
1184
- throw r;
1185
- } finally {
1186
- FS.closeStream(e.fd);
1187
- }
1188
- e.fd = null;
1189
- }, isClosed(e) {
1190
- return e.fd === null;
1191
- }, llseek(e, r, t) {
1192
- if (FS.isClosed(e)) throw new FS.ErrnoError(8);
1193
- if (!e.seekable || !e.stream_ops.llseek) throw new FS.ErrnoError(70);
1194
- if (t != 0 && t != 1 && t != 2) throw new FS.ErrnoError(28);
1195
- return e.position = e.stream_ops.llseek(e, r, t), e.ungotten = [], e.position;
1196
- }, read(e, r, t, n, a) {
1197
- if (n < 0 || a < 0) throw new FS.ErrnoError(28);
1198
- if (FS.isClosed(e)) throw new FS.ErrnoError(8);
1199
- if ((e.flags & 2097155) === 1) throw new FS.ErrnoError(8);
1200
- if (FS.isDir(e.node.mode)) throw new FS.ErrnoError(31);
1201
- if (!e.stream_ops.read) throw new FS.ErrnoError(28);
1202
- var o = typeof a < "u";
1203
- if (!o) a = e.position;
1204
- else if (!e.seekable) throw new FS.ErrnoError(70);
1205
- var s = e.stream_ops.read(e, r, t, n, a);
1206
- return o || (e.position += s), s;
1207
- }, write(e, r, t, n, a, o) {
1208
- if (n < 0 || a < 0) throw new FS.ErrnoError(28);
1209
- if (FS.isClosed(e)) throw new FS.ErrnoError(8);
1210
- if (!(e.flags & 2097155)) throw new FS.ErrnoError(8);
1211
- if (FS.isDir(e.node.mode)) throw new FS.ErrnoError(31);
1212
- if (!e.stream_ops.write) throw new FS.ErrnoError(28);
1213
- e.seekable && e.flags & 1024 && FS.llseek(e, 0, 2);
1214
- var s = typeof a < "u";
1215
- if (!s) a = e.position;
1216
- else if (!e.seekable) throw new FS.ErrnoError(70);
1217
- var l = e.stream_ops.write(e, r, t, n, a, o);
1218
- return s || (e.position += l), l;
1219
- }, allocate(e, r, t) {
1220
- if (FS.isClosed(e)) throw new FS.ErrnoError(8);
1221
- if (r < 0 || t <= 0) throw new FS.ErrnoError(28);
1222
- if (!(e.flags & 2097155)) throw new FS.ErrnoError(8);
1223
- if (!FS.isFile(e.node.mode) && !FS.isDir(e.node.mode)) throw new FS.ErrnoError(43);
1224
- if (!e.stream_ops.allocate) throw new FS.ErrnoError(138);
1225
- e.stream_ops.allocate(e, r, t);
1226
- }, mmap(e, r, t, n, a) {
1227
- if (n & 2 && !(a & 2) && (e.flags & 2097155) !== 2) throw new FS.ErrnoError(2);
1228
- if ((e.flags & 2097155) === 1) throw new FS.ErrnoError(2);
1229
- if (!e.stream_ops.mmap) throw new FS.ErrnoError(43);
1230
- if (!r) throw new FS.ErrnoError(28);
1231
- return e.stream_ops.mmap(e, r, t, n, a);
1232
- }, msync(e, r, t, n, a) {
1233
- return e.stream_ops.msync ? e.stream_ops.msync(e, r, t, n, a) : 0;
1234
- }, ioctl(e, r, t) {
1235
- if (!e.stream_ops.ioctl) throw new FS.ErrnoError(59);
1236
- return e.stream_ops.ioctl(e, r, t);
1237
- }, readFile(e, r = {}) {
1238
- if (r.flags = r.flags || 0, r.encoding = r.encoding || "binary", r.encoding !== "utf8" && r.encoding !== "binary") throw new Error(`Invalid encoding type "${r.encoding}"`);
1239
- var t, n = FS.open(e, r.flags), a = FS.stat(e), o = a.size, s = new Uint8Array(o);
1240
- return FS.read(n, s, 0, o, 0), r.encoding === "utf8" ? t = UTF8ArrayToString(s) : r.encoding === "binary" && (t = s), FS.close(n), t;
1241
- }, writeFile(e, r, t = {}) {
1242
- t.flags = t.flags || 577;
1243
- var n = FS.open(e, t.flags, t.mode);
1244
- if (typeof r == "string") {
1245
- var a = new Uint8Array(lengthBytesUTF8(r) + 1), o = stringToUTF8Array(r, a, 0, a.length);
1246
- FS.write(n, a, 0, o, void 0, t.canOwn);
1247
- } else if (ArrayBuffer.isView(r)) FS.write(n, r, 0, r.byteLength, void 0, t.canOwn);
1248
- else throw new Error("Unsupported data type");
1249
- FS.close(n);
1250
- }, cwd: () => FS.currentPath, chdir(e) {
1251
- var r = FS.lookupPath(e, { follow: true });
1252
- if (r.node === null) throw new FS.ErrnoError(44);
1253
- if (!FS.isDir(r.node.mode)) throw new FS.ErrnoError(54);
1254
- var t = FS.nodePermissions(r.node, "x");
1255
- if (t) throw new FS.ErrnoError(t);
1256
- FS.currentPath = r.path;
1257
- }, createDefaultDirectories() {
1258
- FS.mkdir("/tmp"), FS.mkdir("/home"), FS.mkdir("/home/web_user");
1259
- }, createDefaultDevices() {
1260
- FS.mkdir("/dev"), FS.registerDevice(FS.makedev(1, 3), { read: () => 0, write: (n, a, o, s, l) => s, llseek: () => 0 }), FS.mkdev("/dev/null", FS.makedev(1, 3)), TTY.register(FS.makedev(5, 0), TTY.default_tty_ops), TTY.register(FS.makedev(6, 0), TTY.default_tty1_ops), FS.mkdev("/dev/tty", FS.makedev(5, 0)), FS.mkdev("/dev/tty1", FS.makedev(6, 0));
1261
- var e = new Uint8Array(1024), r = 0, t = () => (r === 0 && (r = randomFill(e).byteLength), e[--r]);
1262
- FS.createDevice("/dev", "random", t), FS.createDevice("/dev", "urandom", t), FS.mkdir("/dev/shm"), FS.mkdir("/dev/shm/tmp");
1263
- }, createSpecialDirectories() {
1264
- FS.mkdir("/proc");
1265
- var e = FS.mkdir("/proc/self");
1266
- FS.mkdir("/proc/self/fd"), FS.mount({ mount() {
1267
- var r = FS.createNode(e, "fd", 16895, 73);
1268
- return r.stream_ops = { llseek: MEMFS.stream_ops.llseek }, r.node_ops = { lookup(t, n) {
1269
- var a = +n, o = FS.getStreamChecked(a), s = { parent: null, mount: { mountpoint: "fake" }, node_ops: { readlink: () => o.path }, id: a + 1 };
1270
- return s.parent = s, s;
1271
- }, readdir() {
1272
- return Array.from(FS.streams.entries()).filter(([t, n]) => n).map(([t, n]) => t.toString());
1273
- } }, r;
1274
- } }, {}, "/proc/self/fd");
1275
- }, createStandardStreams(e, r, t) {
1276
- e ? FS.createDevice("/dev", "stdin", e) : FS.symlink("/dev/tty", "/dev/stdin"), r ? FS.createDevice("/dev", "stdout", null, r) : FS.symlink("/dev/tty", "/dev/stdout"), t ? FS.createDevice("/dev", "stderr", null, t) : FS.symlink("/dev/tty1", "/dev/stderr");
1277
- var n = FS.open("/dev/stdin", 0), a = FS.open("/dev/stdout", 1), o = FS.open("/dev/stderr", 1);
1278
- }, staticInit() {
1279
- FS.nameTable = new Array(4096), FS.mount(MEMFS, {}, "/"), FS.createDefaultDirectories(), FS.createDefaultDevices(), FS.createSpecialDirectories(), FS.filesystems = { MEMFS };
1280
- }, init(e, r, t) {
1281
- FS.initialized = true, e ?? (e = Module.stdin), r ?? (r = Module.stdout), t ?? (t = Module.stderr), FS.createStandardStreams(e, r, t);
1282
- }, quit() {
1283
- FS.initialized = false, _fflush(0);
1284
- for (var e = 0; e < FS.streams.length; e++) {
1285
- var r = FS.streams[e];
1286
- r && FS.close(r);
1287
- }
1288
- }, findObject(e, r) {
1289
- var t = FS.analyzePath(e, r);
1290
- return t.exists ? t.object : null;
1291
- }, analyzePath(e, r) {
1292
- try {
1293
- var t = FS.lookupPath(e, { follow: !r });
1294
- e = t.path;
1295
- } catch {
1296
- }
1297
- var n = { isRoot: false, exists: false, error: 0, name: null, path: null, object: null, parentExists: false, parentPath: null, parentObject: null };
1298
- try {
1299
- var t = FS.lookupPath(e, { parent: true });
1300
- n.parentExists = true, n.parentPath = t.path, n.parentObject = t.node, n.name = PATH.basename(e), t = FS.lookupPath(e, { follow: !r }), n.exists = true, n.path = t.path, n.object = t.node, n.name = t.node.name, n.isRoot = t.path === "/";
1301
- } catch (a) {
1302
- n.error = a.errno;
1303
- }
1304
- return n;
1305
- }, createPath(e, r, t, n) {
1306
- e = typeof e == "string" ? e : FS.getPath(e);
1307
- for (var a = r.split("/").reverse(); a.length; ) {
1308
- var o = a.pop();
1309
- if (o) {
1310
- var s = PATH.join2(e, o);
1311
- try {
1312
- FS.mkdir(s);
1313
- } catch {
1314
- }
1315
- e = s;
1316
- }
1317
- }
1318
- return s;
1319
- }, createFile(e, r, t, n, a) {
1320
- var o = PATH.join2(typeof e == "string" ? e : FS.getPath(e), r), s = FS_getMode(n, a);
1321
- return FS.create(o, s);
1322
- }, createDataFile(e, r, t, n, a, o) {
1323
- var s = r;
1324
- e && (e = typeof e == "string" ? e : FS.getPath(e), s = r ? PATH.join2(e, r) : e);
1325
- var l = FS_getMode(n, a), u = FS.create(s, l);
1326
- if (t) {
1327
- if (typeof t == "string") {
1328
- for (var d = new Array(t.length), c = 0, m = t.length; c < m; ++c) d[c] = t.charCodeAt(c);
1329
- t = d;
1330
- }
1331
- FS.chmod(u, l | 146);
1332
- var _ = FS.open(u, 577);
1333
- FS.write(_, t, 0, t.length, 0, o), FS.close(_), FS.chmod(u, l);
1334
- }
1335
- }, createDevice(e, r, t, n) {
1336
- var l;
1337
- var a = PATH.join2(typeof e == "string" ? e : FS.getPath(e), r), o = FS_getMode(!!t, !!n);
1338
- (l = FS.createDevice).major ?? (l.major = 64);
1339
- var s = FS.makedev(FS.createDevice.major++, 0);
1340
- return FS.registerDevice(s, { open(u) {
1341
- u.seekable = false;
1342
- }, close(u) {
1343
- n?.buffer?.length && n(10);
1344
- }, read(u, d, c, m, _) {
1345
- for (var f = 0, S = 0; S < m; S++) {
1346
- var v;
1347
- try {
1348
- v = t();
1349
- } catch {
1350
- throw new FS.ErrnoError(29);
1351
- }
1352
- if (v === void 0 && f === 0) throw new FS.ErrnoError(6);
1353
- if (v == null) break;
1354
- f++, d[c + S] = v;
1355
- }
1356
- return f && (u.node.atime = Date.now()), f;
1357
- }, write(u, d, c, m, _) {
1358
- for (var f = 0; f < m; f++) try {
1359
- n(d[c + f]);
1360
- } catch {
1361
- throw new FS.ErrnoError(29);
1362
- }
1363
- return m && (u.node.mtime = u.node.ctime = Date.now()), f;
1364
- } }), FS.mkdev(a, o, s);
1365
- }, forceLoadFile(e) {
1366
- if (e.isDevice || e.isFolder || e.link || e.contents) return true;
1367
- if (typeof XMLHttpRequest < "u") throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.");
1368
- try {
1369
- e.contents = readBinary(e.url), e.usedBytes = e.contents.length;
1370
- } catch {
1371
- throw new FS.ErrnoError(29);
1372
- }
1373
- }, createLazyFile(e, r, t, n, a) {
1374
- class o {
1375
- constructor() {
1376
- b(this, "lengthKnown", false);
1377
- b(this, "chunks", []);
1378
- }
1379
- get(f) {
1380
- if (!(f > this.length - 1 || f < 0)) {
1381
- var S = f % this.chunkSize, v = f / this.chunkSize | 0;
1382
- return this.getter(v)[S];
1383
- }
1384
- }
1385
- setDataGetter(f) {
1386
- this.getter = f;
1387
- }
1388
- cacheLength() {
1389
- var f = new XMLHttpRequest();
1390
- if (f.open("HEAD", t, false), f.send(null), !(f.status >= 200 && f.status < 300 || f.status === 304)) throw new Error("Couldn't load " + t + ". Status: " + f.status);
1391
- var S = Number(f.getResponseHeader("Content-length")), v, F = (v = f.getResponseHeader("Accept-Ranges")) && v === "bytes", g = (v = f.getResponseHeader("Content-Encoding")) && v === "gzip", w = 1024 * 1024;
1392
- F || (w = S);
1393
- var A = (p, h) => {
1394
- if (p > h) throw new Error("invalid range (" + p + ", " + h + ") or no bytes requested!");
1395
- if (h > S - 1) throw new Error("only " + S + " bytes available! programmer error!");
1396
- var E = new XMLHttpRequest();
1397
- if (E.open("GET", t, false), S !== w && E.setRequestHeader("Range", "bytes=" + p + "-" + h), E.responseType = "arraybuffer", E.overrideMimeType && E.overrideMimeType("text/plain; charset=x-user-defined"), E.send(null), !(E.status >= 200 && E.status < 300 || E.status === 304)) throw new Error("Couldn't load " + t + ". Status: " + E.status);
1398
- return E.response !== void 0 ? new Uint8Array(E.response || []) : intArrayFromString(E.responseText || "", true);
1399
- }, y = this;
1400
- y.setDataGetter((p) => {
1401
- var h = p * w, E = (p + 1) * w - 1;
1402
- if (E = Math.min(E, S - 1), typeof y.chunks[p] > "u" && (y.chunks[p] = A(h, E)), typeof y.chunks[p] > "u") throw new Error("doXHR failed!");
1403
- return y.chunks[p];
1404
- }), (g || !S) && (w = S = 1, S = this.getter(0).length, w = S, out("LazyFiles on gzip forces download of the whole file when length is accessed")), this._length = S, this._chunkSize = w, this.lengthKnown = true;
1405
- }
1406
- get length() {
1407
- return this.lengthKnown || this.cacheLength(), this._length;
1408
- }
1409
- get chunkSize() {
1410
- return this.lengthKnown || this.cacheLength(), this._chunkSize;
1411
- }
1412
- }
1413
- if (typeof XMLHttpRequest < "u") {
1414
- if (!ENVIRONMENT_IS_WORKER) throw "Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";
1415
- var s = new o(), l = { isDevice: false, contents: s };
1416
- } else var l = { isDevice: false, url: t };
1417
- var u = FS.createFile(e, r, l, n, a);
1418
- l.contents ? u.contents = l.contents : l.url && (u.contents = null, u.url = l.url), Object.defineProperties(u, { usedBytes: { get: function() {
1419
- return this.contents.length;
1420
- } } });
1421
- var d = {}, c = Object.keys(u.stream_ops);
1422
- c.forEach((_) => {
1423
- var f = u.stream_ops[_];
1424
- d[_] = (...S) => (FS.forceLoadFile(u), f(...S));
1425
- });
1426
- function m(_, f, S, v, F) {
1427
- var g = _.node.contents;
1428
- if (F >= g.length) return 0;
1429
- var w = Math.min(g.length - F, v);
1430
- if (g.slice) for (var A = 0; A < w; A++) f[S + A] = g[F + A];
1431
- else for (var A = 0; A < w; A++) f[S + A] = g.get(F + A);
1432
- return w;
1433
- }
1434
- return d.read = (_, f, S, v, F) => (FS.forceLoadFile(u), m(_, f, S, v, F)), d.mmap = (_, f, S, v, F) => {
1435
- FS.forceLoadFile(u);
1436
- var g = mmapAlloc(f);
1437
- if (!g) throw new FS.ErrnoError(48);
1438
- return m(_, HEAP8, g, f, S), { ptr: g, allocated: true };
1439
- }, u.stream_ops = d, u;
1440
- } }, SYSCALLS = { DEFAULT_POLLMASK: 5, calculateAt(e, r, t) {
1441
- if (PATH.isAbs(r)) return r;
1442
- var n;
1443
- if (e === -100) n = FS.cwd();
1444
- else {
1445
- var a = SYSCALLS.getStreamFromFD(e);
1446
- n = a.path;
1447
- }
1448
- if (r.length == 0) {
1449
- if (!t) throw new FS.ErrnoError(44);
1450
- return n;
1451
- }
1452
- return n + "/" + r;
1453
- }, doStat(e, r, t) {
1454
- var n = e(r);
1455
- HEAP32[t >> 2] = n.dev, HEAP32[t + 4 >> 2] = n.mode, HEAPU32[t + 8 >> 2] = n.nlink, HEAP32[t + 12 >> 2] = n.uid, HEAP32[t + 16 >> 2] = n.gid, HEAP32[t + 20 >> 2] = n.rdev, HEAP64[t + 24 >> 3] = BigInt(n.size), HEAP32[t + 32 >> 2] = 4096, HEAP32[t + 36 >> 2] = n.blocks;
1456
- var a = n.atime.getTime(), o = n.mtime.getTime(), s = n.ctime.getTime();
1457
- return HEAP64[t + 40 >> 3] = BigInt(Math.floor(a / 1e3)), HEAPU32[t + 48 >> 2] = a % 1e3 * 1e3 * 1e3, HEAP64[t + 56 >> 3] = BigInt(Math.floor(o / 1e3)), HEAPU32[t + 64 >> 2] = o % 1e3 * 1e3 * 1e3, HEAP64[t + 72 >> 3] = BigInt(Math.floor(s / 1e3)), HEAPU32[t + 80 >> 2] = s % 1e3 * 1e3 * 1e3, HEAP64[t + 88 >> 3] = BigInt(n.ino), 0;
1458
- }, doMsync(e, r, t, n, a) {
1459
- if (!FS.isFile(r.node.mode)) throw new FS.ErrnoError(43);
1460
- if (n & 2) return 0;
1461
- var o = HEAPU8.slice(e, e + t);
1462
- FS.msync(r, o, a, t, n);
1463
- }, getStreamFromFD(e) {
1464
- var r = FS.getStreamChecked(e);
1465
- return r;
1466
- }, varargs: void 0, getStr(e) {
1467
- var r = UTF8ToString(e);
1468
- return r;
1469
- } }, ___syscall__newselect = function(e, r, t, n, a) {
1470
- try {
1471
- for (var o = 0, s = r ? HEAP32[r >> 2] : 0, l = r ? HEAP32[r + 4 >> 2] : 0, u = t ? HEAP32[t >> 2] : 0, d = t ? HEAP32[t + 4 >> 2] : 0, c = n ? HEAP32[n >> 2] : 0, m = n ? HEAP32[n + 4 >> 2] : 0, _ = 0, f = 0, S = 0, v = 0, F = 0, g = 0, w = (r ? HEAP32[r >> 2] : 0) | (t ? HEAP32[t >> 2] : 0) | (n ? HEAP32[n >> 2] : 0), A = (r ? HEAP32[r + 4 >> 2] : 0) | (t ? HEAP32[t + 4 >> 2] : 0) | (n ? HEAP32[n + 4 >> 2] : 0), y = (k, P, H, I) => k < 32 ? P & I : H & I, p = 0; p < e; p++) {
1472
- var h = 1 << p % 32;
1473
- if (y(p, w, A, h)) {
1474
- var E = SYSCALLS.getStreamFromFD(p), M = SYSCALLS.DEFAULT_POLLMASK;
1475
- if (E.stream_ops.poll) {
1476
- var T = -1;
1477
- if (a) {
1478
- var D = r ? HEAP32[a >> 2] : 0, R = r ? HEAP32[a + 4 >> 2] : 0;
1479
- T = (D + R / 1e6) * 1e3;
1480
- }
1481
- M = E.stream_ops.poll(E, T);
1482
- }
1483
- M & 1 && y(p, s, l, h) && (p < 32 ? _ = _ | h : f = f | h, o++), M & 4 && y(p, u, d, h) && (p < 32 ? S = S | h : v = v | h, o++), M & 2 && y(p, c, m, h) && (p < 32 ? F = F | h : g = g | h, o++);
1484
- }
1485
- }
1486
- return r && (HEAP32[r >> 2] = _, HEAP32[r + 4 >> 2] = f), t && (HEAP32[t >> 2] = S, HEAP32[t + 4 >> 2] = v), n && (HEAP32[n >> 2] = F, HEAP32[n + 4 >> 2] = g), o;
1487
- } catch (k) {
1488
- if (typeof FS > "u" || k.name !== "ErrnoError") throw k;
1489
- return -k.errno;
1490
- }
1491
- };
1492
- ___syscall__newselect.sig = "iipppp";
1493
- function ___syscall_dup(e) {
1494
- try {
1495
- var r = SYSCALLS.getStreamFromFD(e);
1496
- return FS.dupStream(r).fd;
1497
- } catch (t) {
1498
- if (typeof FS > "u" || t.name !== "ErrnoError") throw t;
1499
- return -t.errno;
1500
- }
1501
- }
1502
- ___syscall_dup.sig = "ii";
1503
- function ___syscall_faccessat(e, r, t, n) {
1504
- try {
1505
- if (r = SYSCALLS.getStr(r), r = SYSCALLS.calculateAt(e, r), t & -8) return -28;
1506
- var a = FS.lookupPath(r, { follow: true }), o = a.node;
1507
- if (!o) return -44;
1508
- var s = "";
1509
- return t & 4 && (s += "r"), t & 2 && (s += "w"), t & 1 && (s += "x"), s && FS.nodePermissions(o, s) ? -2 : 0;
1510
- } catch (l) {
1511
- if (typeof FS > "u" || l.name !== "ErrnoError") throw l;
1512
- return -l.errno;
1513
- }
1514
- }
1515
- ___syscall_faccessat.sig = "iipii";
1516
- var ___syscall_fadvise64 = (e, r, t, n) => 0;
1517
- ___syscall_fadvise64.sig = "iijji";
1518
- var syscallGetVarargI = () => {
1519
- var e = HEAP32[+SYSCALLS.varargs >> 2];
1520
- return SYSCALLS.varargs += 4, e;
1521
- }, syscallGetVarargP = syscallGetVarargI;
1522
- function ___syscall_fcntl64(e, r, t) {
1523
- SYSCALLS.varargs = t;
1524
- try {
1525
- var n = SYSCALLS.getStreamFromFD(e);
1526
- switch (r) {
1527
- case 0: {
1528
- var a = syscallGetVarargI();
1529
- if (a < 0) return -28;
1530
- for (; FS.streams[a]; ) a++;
1531
- var o;
1532
- return o = FS.dupStream(n, a), o.fd;
1533
- }
1534
- case 1:
1535
- case 2:
1536
- return 0;
1537
- case 3:
1538
- return n.flags;
1539
- case 4: {
1540
- var a = syscallGetVarargI();
1541
- return n.flags |= a, 0;
1542
- }
1543
- case 12: {
1544
- var a = syscallGetVarargP(), s = 0;
1545
- return HEAP16[a + s >> 1] = 2, 0;
1546
- }
1547
- case 13:
1548
- case 14:
1549
- return 0;
1550
- }
1551
- return -28;
1552
- } catch (l) {
1553
- if (typeof FS > "u" || l.name !== "ErrnoError") throw l;
1554
- return -l.errno;
1555
- }
1556
- }
1557
- ___syscall_fcntl64.sig = "iiip";
1558
- function ___syscall_fstat64(e, r) {
1559
- try {
1560
- var t = SYSCALLS.getStreamFromFD(e);
1561
- return SYSCALLS.doStat(FS.stat, t.path, r);
1562
- } catch (n) {
1563
- if (typeof FS > "u" || n.name !== "ErrnoError") throw n;
1564
- return -n.errno;
1565
- }
1566
- }
1567
- ___syscall_fstat64.sig = "iip";
1568
- var stringToUTF8 = (e, r, t) => stringToUTF8Array(e, HEAPU8, r, t);
1569
- function ___syscall_getcwd(e, r) {
1570
- try {
1571
- if (r === 0) return -28;
1572
- var t = FS.cwd(), n = lengthBytesUTF8(t) + 1;
1573
- return r < n ? -68 : (stringToUTF8(t, e, r), n);
1574
- } catch (a) {
1575
- if (typeof FS > "u" || a.name !== "ErrnoError") throw a;
1576
- return -a.errno;
1577
- }
1578
- }
1579
- ___syscall_getcwd.sig = "ipp";
1580
- function ___syscall_getdents64(e, r, t) {
1581
- try {
1582
- var n = SYSCALLS.getStreamFromFD(e);
1583
- n.getdents || (n.getdents = FS.readdir(n.path));
1584
- for (var a = 280, o = 0, s = FS.llseek(n, 0, 1), l = Math.floor(s / a), u = Math.min(n.getdents.length, l + Math.floor(t / a)), d = l; d < u; d++) {
1585
- var c, m, _ = n.getdents[d];
1586
- if (_ === ".") c = n.node.id, m = 4;
1587
- else if (_ === "..") {
1588
- var f = FS.lookupPath(n.path, { parent: true });
1589
- c = f.node.id, m = 4;
1590
- } else {
1591
- var S;
1592
- try {
1593
- S = FS.lookupNode(n.node, _);
1594
- } catch (v) {
1595
- if (v?.errno === 28) continue;
1596
- throw v;
1597
- }
1598
- c = S.id, m = FS.isChrdev(S.mode) ? 2 : FS.isDir(S.mode) ? 4 : FS.isLink(S.mode) ? 10 : 8;
1599
- }
1600
- HEAP64[r + o >> 3] = BigInt(c), HEAP64[r + o + 8 >> 3] = BigInt((d + 1) * a), HEAP16[r + o + 16 >> 1] = 280, HEAP8[r + o + 18] = m, stringToUTF8(_, r + o + 19, 256), o += a;
1601
- }
1602
- return FS.llseek(n, d * a, 0), o;
1603
- } catch (v) {
1604
- if (typeof FS > "u" || v.name !== "ErrnoError") throw v;
1605
- return -v.errno;
1606
- }
1607
- }
1608
- ___syscall_getdents64.sig = "iipp";
1609
- function ___syscall_ioctl(e, r, t) {
1610
- SYSCALLS.varargs = t;
1611
- try {
1612
- var n = SYSCALLS.getStreamFromFD(e);
1613
- switch (r) {
1614
- case 21509:
1615
- return n.tty ? 0 : -59;
1616
- case 21505: {
1617
- if (!n.tty) return -59;
1618
- if (n.tty.ops.ioctl_tcgets) {
1619
- var a = n.tty.ops.ioctl_tcgets(n), o = syscallGetVarargP();
1620
- HEAP32[o >> 2] = a.c_iflag || 0, HEAP32[o + 4 >> 2] = a.c_oflag || 0, HEAP32[o + 8 >> 2] = a.c_cflag || 0, HEAP32[o + 12 >> 2] = a.c_lflag || 0;
1621
- for (var s = 0; s < 32; s++) HEAP8[o + s + 17] = a.c_cc[s] || 0;
1622
- return 0;
1623
- }
1624
- return 0;
1625
- }
1626
- case 21510:
1627
- case 21511:
1628
- case 21512:
1629
- return n.tty ? 0 : -59;
1630
- case 21506:
1631
- case 21507:
1632
- case 21508: {
1633
- if (!n.tty) return -59;
1634
- if (n.tty.ops.ioctl_tcsets) {
1635
- for (var o = syscallGetVarargP(), l = HEAP32[o >> 2], u = HEAP32[o + 4 >> 2], d = HEAP32[o + 8 >> 2], c = HEAP32[o + 12 >> 2], m = [], s = 0; s < 32; s++) m.push(HEAP8[o + s + 17]);
1636
- return n.tty.ops.ioctl_tcsets(n.tty, r, { c_iflag: l, c_oflag: u, c_cflag: d, c_lflag: c, c_cc: m });
1637
- }
1638
- return 0;
1639
- }
1640
- case 21519: {
1641
- if (!n.tty) return -59;
1642
- var o = syscallGetVarargP();
1643
- return HEAP32[o >> 2] = 0, 0;
1644
- }
1645
- case 21520:
1646
- return n.tty ? -28 : -59;
1647
- case 21531: {
1648
- var o = syscallGetVarargP();
1649
- return FS.ioctl(n, r, o);
1650
- }
1651
- case 21523: {
1652
- if (!n.tty) return -59;
1653
- if (n.tty.ops.ioctl_tiocgwinsz) {
1654
- var _ = n.tty.ops.ioctl_tiocgwinsz(n.tty), o = syscallGetVarargP();
1655
- HEAP16[o >> 1] = _[0], HEAP16[o + 2 >> 1] = _[1];
1656
- }
1657
- return 0;
1658
- }
1659
- case 21524:
1660
- return n.tty ? 0 : -59;
1661
- case 21515:
1662
- return n.tty ? 0 : -59;
1663
- default:
1664
- return -28;
1665
- }
1666
- } catch (f) {
1667
- if (typeof FS > "u" || f.name !== "ErrnoError") throw f;
1668
- return -f.errno;
1669
- }
1670
- }
1671
- ___syscall_ioctl.sig = "iiip";
1672
- function ___syscall_lstat64(e, r) {
1673
- try {
1674
- return e = SYSCALLS.getStr(e), SYSCALLS.doStat(FS.lstat, e, r);
1675
- } catch (t) {
1676
- if (typeof FS > "u" || t.name !== "ErrnoError") throw t;
1677
- return -t.errno;
1678
- }
1679
- }
1680
- ___syscall_lstat64.sig = "ipp";
1681
- function ___syscall_mkdirat(e, r, t) {
1682
- try {
1683
- return r = SYSCALLS.getStr(r), r = SYSCALLS.calculateAt(e, r), FS.mkdir(r, t, 0), 0;
1684
- } catch (n) {
1685
- if (typeof FS > "u" || n.name !== "ErrnoError") throw n;
1686
- return -n.errno;
1687
- }
1688
- }
1689
- ___syscall_mkdirat.sig = "iipi";
1690
- function ___syscall_newfstatat(e, r, t, n) {
1691
- try {
1692
- r = SYSCALLS.getStr(r);
1693
- var a = n & 256, o = n & 4096;
1694
- return n = n & -6401, r = SYSCALLS.calculateAt(e, r, o), SYSCALLS.doStat(a ? FS.lstat : FS.stat, r, t);
1695
- } catch (s) {
1696
- if (typeof FS > "u" || s.name !== "ErrnoError") throw s;
1697
- return -s.errno;
1698
- }
1699
- }
1700
- ___syscall_newfstatat.sig = "iippi";
1701
- function ___syscall_openat(e, r, t, n) {
1702
- SYSCALLS.varargs = n;
1703
- try {
1704
- r = SYSCALLS.getStr(r), r = SYSCALLS.calculateAt(e, r);
1705
- var a = n ? syscallGetVarargI() : 0;
1706
- return FS.open(r, t, a).fd;
1707
- } catch (o) {
1708
- if (typeof FS > "u" || o.name !== "ErrnoError") throw o;
1709
- return -o.errno;
1710
- }
1711
- }
1712
- ___syscall_openat.sig = "iipip";
1713
- var PIPEFS = { BUCKET_BUFFER_SIZE: 8192, mount(e) {
1714
- return FS.createNode(null, "/", 16895, 0);
1715
- }, createPipe() {
1716
- var e = { buckets: [], refcnt: 2 };
1717
- e.buckets.push({ buffer: new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE), offset: 0, roffset: 0 });
1718
- var r = PIPEFS.nextname(), t = PIPEFS.nextname(), n = FS.createNode(PIPEFS.root, r, 4096, 0), a = FS.createNode(PIPEFS.root, t, 4096, 0);
1719
- n.pipe = e, a.pipe = e;
1720
- var o = FS.createStream({ path: r, node: n, flags: 0, seekable: false, stream_ops: PIPEFS.stream_ops });
1721
- n.stream = o;
1722
- var s = FS.createStream({ path: t, node: a, flags: 1, seekable: false, stream_ops: PIPEFS.stream_ops });
1723
- return a.stream = s, { readable_fd: o.fd, writable_fd: s.fd };
1724
- }, stream_ops: { poll(e) {
1725
- var r = e.node.pipe;
1726
- if ((e.flags & 2097155) === 1) return 260;
1727
- if (r.buckets.length > 0) for (var t = 0; t < r.buckets.length; t++) {
1728
- var n = r.buckets[t];
1729
- if (n.offset - n.roffset > 0) return 65;
1730
- }
1731
- return 0;
1732
- }, ioctl(e, r, t) {
1733
- return 28;
1734
- }, fsync(e) {
1735
- return 28;
1736
- }, read(e, r, t, n, a) {
1737
- for (var o = e.node.pipe, s = 0, l = 0; l < o.buckets.length; l++) {
1738
- var u = o.buckets[l];
1739
- s += u.offset - u.roffset;
1740
- }
1741
- var d = r.subarray(t, t + n);
1742
- if (n <= 0) return 0;
1743
- if (s == 0) throw new FS.ErrnoError(6);
1744
- for (var c = Math.min(s, n), m = c, _ = 0, l = 0; l < o.buckets.length; l++) {
1745
- var f = o.buckets[l], S = f.offset - f.roffset;
1746
- if (c <= S) {
1747
- var v = f.buffer.subarray(f.roffset, f.offset);
1748
- c < S ? (v = v.subarray(0, c), f.roffset += c) : _++, d.set(v);
1749
- break;
1750
- } else {
1751
- var v = f.buffer.subarray(f.roffset, f.offset);
1752
- d.set(v), d = d.subarray(v.byteLength), c -= v.byteLength, _++;
1753
- }
1754
- }
1755
- return _ && _ == o.buckets.length && (_--, o.buckets[_].offset = 0, o.buckets[_].roffset = 0), o.buckets.splice(0, _), m;
1756
- }, write(e, r, t, n, a) {
1757
- var o = e.node.pipe, s = r.subarray(t, t + n), l = s.byteLength;
1758
- if (l <= 0) return 0;
1759
- var u = null;
1760
- o.buckets.length == 0 ? (u = { buffer: new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE), offset: 0, roffset: 0 }, o.buckets.push(u)) : u = o.buckets[o.buckets.length - 1], assert(u.offset <= PIPEFS.BUCKET_BUFFER_SIZE);
1761
- var d = PIPEFS.BUCKET_BUFFER_SIZE - u.offset;
1762
- if (d >= l) return u.buffer.set(s, u.offset), u.offset += l, l;
1763
- d > 0 && (u.buffer.set(s.subarray(0, d), u.offset), u.offset += d, s = s.subarray(d, s.byteLength));
1764
- for (var c = s.byteLength / PIPEFS.BUCKET_BUFFER_SIZE | 0, m = s.byteLength % PIPEFS.BUCKET_BUFFER_SIZE, _ = 0; _ < c; _++) {
1765
- var f = { buffer: new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE), offset: PIPEFS.BUCKET_BUFFER_SIZE, roffset: 0 };
1766
- o.buckets.push(f), f.buffer.set(s.subarray(0, PIPEFS.BUCKET_BUFFER_SIZE)), s = s.subarray(PIPEFS.BUCKET_BUFFER_SIZE, s.byteLength);
1767
- }
1768
- if (m > 0) {
1769
- var f = { buffer: new Uint8Array(PIPEFS.BUCKET_BUFFER_SIZE), offset: s.byteLength, roffset: 0 };
1770
- o.buckets.push(f), f.buffer.set(s);
1771
- }
1772
- return l;
1773
- }, close(e) {
1774
- var r = e.node.pipe;
1775
- r.refcnt--, r.refcnt === 0 && (r.buckets = null);
1776
- } }, nextname() {
1777
- return PIPEFS.nextname.current || (PIPEFS.nextname.current = 0), "pipe[" + PIPEFS.nextname.current++ + "]";
1778
- } };
1779
- function ___syscall_pipe(e) {
1780
- try {
1781
- if (e == 0) throw new FS.ErrnoError(21);
1782
- var r = PIPEFS.createPipe();
1783
- return HEAP32[e >> 2] = r.readable_fd, HEAP32[e + 4 >> 2] = r.writable_fd, 0;
1784
- } catch (t) {
1785
- if (typeof FS > "u" || t.name !== "ErrnoError") throw t;
1786
- return -t.errno;
1787
- }
1788
- }
1789
- ___syscall_pipe.sig = "ip";
1790
- function ___syscall_readlinkat(e, r, t, n) {
1791
- try {
1792
- if (r = SYSCALLS.getStr(r), r = SYSCALLS.calculateAt(e, r), n <= 0) return -28;
1793
- var a = FS.readlink(r), o = Math.min(n, lengthBytesUTF8(a)), s = HEAP8[t + o];
1794
- return stringToUTF8(a, t, n + 1), HEAP8[t + o] = s, o;
1795
- } catch (l) {
1796
- if (typeof FS > "u" || l.name !== "ErrnoError") throw l;
1797
- return -l.errno;
1798
- }
1799
- }
1800
- ___syscall_readlinkat.sig = "iippp";
1801
- var SOCKFS = { websocketArgs: {}, callbacks: {}, on(e, r) {
1802
- SOCKFS.callbacks[e] = r;
1803
- }, emit(e, r) {
1804
- SOCKFS.callbacks[e]?.(r);
1805
- }, mount(e) {
1806
- return SOCKFS.websocketArgs = Module.websocket || {}, (Module.websocket ?? (Module.websocket = {})).on = SOCKFS.on, FS.createNode(null, "/", 16895, 0);
1807
- }, createSocket(e, r, t) {
1808
- r &= -526337;
1809
- var n = r == 1;
1810
- if (n && t && t != 6) throw new FS.ErrnoError(66);
1811
- var a = { family: e, type: r, protocol: t, server: null, error: null, peers: {}, pending: [], recv_queue: [], sock_ops: SOCKFS.websocket_sock_ops }, o = SOCKFS.nextname(), s = FS.createNode(SOCKFS.root, o, 49152, 0);
1812
- s.sock = a;
1813
- var l = FS.createStream({ path: o, node: s, flags: 2, seekable: false, stream_ops: SOCKFS.stream_ops });
1814
- return a.stream = l, a;
1815
- }, getSocket(e) {
1816
- var r = FS.getStream(e);
1817
- return !r || !FS.isSocket(r.node.mode) ? null : r.node.sock;
1818
- }, stream_ops: { poll(e) {
1819
- var r = e.node.sock;
1820
- return r.sock_ops.poll(r);
1821
- }, ioctl(e, r, t) {
1822
- var n = e.node.sock;
1823
- return n.sock_ops.ioctl(n, r, t);
1824
- }, read(e, r, t, n, a) {
1825
- var o = e.node.sock, s = o.sock_ops.recvmsg(o, n);
1826
- return s ? (r.set(s.buffer, t), s.buffer.length) : 0;
1827
- }, write(e, r, t, n, a) {
1828
- var o = e.node.sock;
1829
- return o.sock_ops.sendmsg(o, r, t, n);
1830
- }, close(e) {
1831
- var r = e.node.sock;
1832
- r.sock_ops.close(r);
1833
- } }, nextname() {
1834
- return SOCKFS.nextname.current || (SOCKFS.nextname.current = 0), `socket[${SOCKFS.nextname.current++}]`;
1835
- }, websocket_sock_ops: { createPeer(e, r, t) {
1836
- var n;
1837
- if (typeof r == "object" && (n = r, r = null, t = null), n) if (n._socket) r = n._socket.remoteAddress, t = n._socket.remotePort;
1838
- else {
1839
- var a = /ws[s]?:\/\/([^:]+):(\d+)/.exec(n.url);
1840
- if (!a) throw new Error("WebSocket URL must be in the format ws(s)://address:port");
1841
- r = a[1], t = parseInt(a[2], 10);
1842
- }
1843
- else try {
1844
- var o = "ws:#".replace("#", "//"), s = "binary", l = void 0;
1845
- if (SOCKFS.websocketArgs.url && (o = SOCKFS.websocketArgs.url), SOCKFS.websocketArgs.subprotocol ? s = SOCKFS.websocketArgs.subprotocol : SOCKFS.websocketArgs.subprotocol === null && (s = "null"), o === "ws://" || o === "wss://") {
1846
- var u = r.split("/");
1847
- o = o + u[0] + ":" + t + "/" + u.slice(1).join("/");
1848
- }
1849
- s !== "null" && (s = s.replace(/^ +| +$/g, "").split(/ *, */), l = s);
1850
- var d;
1851
- ENVIRONMENT_IS_NODE ? d = require("ws") : d = WebSocket, n = new d(o, l), n.binaryType = "arraybuffer";
1852
- } catch {
1853
- throw new FS.ErrnoError(23);
1854
- }
1855
- var c = { addr: r, port: t, socket: n, msg_send_queue: [] };
1856
- return SOCKFS.websocket_sock_ops.addPeer(e, c), SOCKFS.websocket_sock_ops.handlePeerEvents(e, c), e.type === 2 && typeof e.sport < "u" && c.msg_send_queue.push(new Uint8Array([255, 255, 255, 255, 112, 111, 114, 116, (e.sport & 65280) >> 8, e.sport & 255])), c;
1857
- }, getPeer(e, r, t) {
1858
- return e.peers[r + ":" + t];
1859
- }, addPeer(e, r) {
1860
- e.peers[r.addr + ":" + r.port] = r;
1861
- }, removePeer(e, r) {
1862
- delete e.peers[r.addr + ":" + r.port];
1863
- }, handlePeerEvents(e, r) {
1864
- var t = true, n = function() {
1865
- e.connecting = false, SOCKFS.emit("open", e.stream.fd);
1866
- try {
1867
- for (var o = r.msg_send_queue.shift(); o; ) r.socket.send(o), o = r.msg_send_queue.shift();
1868
- } catch {
1869
- r.socket.close();
1870
- }
1871
- };
1872
- function a(o) {
1873
- if (typeof o == "string") {
1874
- var s = new TextEncoder();
1875
- o = s.encode(o);
1876
- } else {
1877
- if (assert(o.byteLength !== void 0), o.byteLength == 0) return;
1878
- o = new Uint8Array(o);
1879
- }
1880
- var l = t;
1881
- if (t = false, l && o.length === 10 && o[0] === 255 && o[1] === 255 && o[2] === 255 && o[3] === 255 && o[4] === 112 && o[5] === 111 && o[6] === 114 && o[7] === 116) {
1882
- var u = o[8] << 8 | o[9];
1883
- SOCKFS.websocket_sock_ops.removePeer(e, r), r.port = u, SOCKFS.websocket_sock_ops.addPeer(e, r);
1884
- return;
1885
- }
1886
- e.recv_queue.push({ addr: r.addr, port: r.port, data: o }), SOCKFS.emit("message", e.stream.fd);
1887
- }
1888
- ENVIRONMENT_IS_NODE ? (r.socket.on("open", n), r.socket.on("message", function(o, s) {
1889
- s && a(new Uint8Array(o).buffer);
1890
- }), r.socket.on("close", function() {
1891
- SOCKFS.emit("close", e.stream.fd);
1892
- }), r.socket.on("error", function(o) {
1893
- e.error = 14, SOCKFS.emit("error", [e.stream.fd, e.error, "ECONNREFUSED: Connection refused"]);
1894
- })) : (r.socket.onopen = n, r.socket.onclose = function() {
1895
- SOCKFS.emit("close", e.stream.fd);
1896
- }, r.socket.onmessage = function(s) {
1897
- a(s.data);
1898
- }, r.socket.onerror = function(o) {
1899
- e.error = 14, SOCKFS.emit("error", [e.stream.fd, e.error, "ECONNREFUSED: Connection refused"]);
1900
- });
1901
- }, poll(e) {
1902
- if (e.type === 1 && e.server) return e.pending.length ? 65 : 0;
1903
- var r = 0, t = e.type === 1 ? SOCKFS.websocket_sock_ops.getPeer(e, e.daddr, e.dport) : null;
1904
- return (e.recv_queue.length || !t || t && t.socket.readyState === t.socket.CLOSING || t && t.socket.readyState === t.socket.CLOSED) && (r |= 65), (!t || t && t.socket.readyState === t.socket.OPEN) && (r |= 4), (t && t.socket.readyState === t.socket.CLOSING || t && t.socket.readyState === t.socket.CLOSED) && (e.connecting ? r |= 4 : r |= 16), r;
1905
- }, ioctl(e, r, t) {
1906
- switch (r) {
1907
- case 21531:
1908
- var n = 0;
1909
- return e.recv_queue.length && (n = e.recv_queue[0].data.length), HEAP32[t >> 2] = n, 0;
1910
- default:
1911
- return 28;
1912
- }
1913
- }, close(e) {
1914
- if (e.server) {
1915
- try {
1916
- e.server.close();
1917
- } catch {
1918
- }
1919
- e.server = null;
1920
- }
1921
- for (var r = Object.keys(e.peers), t = 0; t < r.length; t++) {
1922
- var n = e.peers[r[t]];
1923
- try {
1924
- n.socket.close();
1925
- } catch {
1926
- }
1927
- SOCKFS.websocket_sock_ops.removePeer(e, n);
1928
- }
1929
- return 0;
1930
- }, bind(e, r, t) {
1931
- if (typeof e.saddr < "u" || typeof e.sport < "u") throw new FS.ErrnoError(28);
1932
- if (e.saddr = r, e.sport = t, e.type === 2) {
1933
- e.server && (e.server.close(), e.server = null);
1934
- try {
1935
- e.sock_ops.listen(e, 0);
1936
- } catch (n) {
1937
- if (n.name !== "ErrnoError" || n.errno !== 138) throw n;
1938
- }
1939
- }
1940
- }, connect(e, r, t) {
1941
- if (e.server) throw new FS.ErrnoError(138);
1942
- if (typeof e.daddr < "u" && typeof e.dport < "u") {
1943
- var n = SOCKFS.websocket_sock_ops.getPeer(e, e.daddr, e.dport);
1944
- if (n) throw n.socket.readyState === n.socket.CONNECTING ? new FS.ErrnoError(7) : new FS.ErrnoError(30);
1945
- }
1946
- var a = SOCKFS.websocket_sock_ops.createPeer(e, r, t);
1947
- e.daddr = a.addr, e.dport = a.port, e.connecting = true;
1948
- }, listen(e, r) {
1949
- if (!ENVIRONMENT_IS_NODE) throw new FS.ErrnoError(138);
1950
- if (e.server) throw new FS.ErrnoError(28);
1951
- var t = require("ws").Server, n = e.saddr;
1952
- e.server = new t({ host: n, port: e.sport }), SOCKFS.emit("listen", e.stream.fd), e.server.on("connection", function(a) {
1953
- if (e.type === 1) {
1954
- var o = SOCKFS.createSocket(e.family, e.type, e.protocol), s = SOCKFS.websocket_sock_ops.createPeer(o, a);
1955
- o.daddr = s.addr, o.dport = s.port, e.pending.push(o), SOCKFS.emit("connection", o.stream.fd);
1956
- } else SOCKFS.websocket_sock_ops.createPeer(e, a), SOCKFS.emit("connection", e.stream.fd);
1957
- }), e.server.on("close", function() {
1958
- SOCKFS.emit("close", e.stream.fd), e.server = null;
1959
- }), e.server.on("error", function(a) {
1960
- e.error = 23, SOCKFS.emit("error", [e.stream.fd, e.error, "EHOSTUNREACH: Host is unreachable"]);
1961
- });
1962
- }, accept(e) {
1963
- if (!e.server || !e.pending.length) throw new FS.ErrnoError(28);
1964
- var r = e.pending.shift();
1965
- return r.stream.flags = e.stream.flags, r;
1966
- }, getname(e, r) {
1967
- var t, n;
1968
- if (r) {
1969
- if (e.daddr === void 0 || e.dport === void 0) throw new FS.ErrnoError(53);
1970
- t = e.daddr, n = e.dport;
1971
- } else t = e.saddr || 0, n = e.sport || 0;
1972
- return { addr: t, port: n };
1973
- }, sendmsg(e, r, t, n, a, o) {
1974
- if (e.type === 2) {
1975
- if ((a === void 0 || o === void 0) && (a = e.daddr, o = e.dport), a === void 0 || o === void 0) throw new FS.ErrnoError(17);
1976
- } else a = e.daddr, o = e.dport;
1977
- var s = SOCKFS.websocket_sock_ops.getPeer(e, a, o);
1978
- if (e.type === 1 && (!s || s.socket.readyState === s.socket.CLOSING || s.socket.readyState === s.socket.CLOSED)) throw new FS.ErrnoError(53);
1979
- ArrayBuffer.isView(r) && (t += r.byteOffset, r = r.buffer);
1980
- var l = r.slice(t, t + n);
1981
- if (!s || s.socket.readyState !== s.socket.OPEN) return e.type === 2 && (!s || s.socket.readyState === s.socket.CLOSING || s.socket.readyState === s.socket.CLOSED) && (s = SOCKFS.websocket_sock_ops.createPeer(e, a, o)), s.msg_send_queue.push(l), n;
1982
- try {
1983
- return s.socket.send(l), n;
1984
- } catch {
1985
- throw new FS.ErrnoError(28);
1986
- }
1987
- }, recvmsg(e, r) {
1988
- if (e.type === 1 && e.server) throw new FS.ErrnoError(53);
1989
- var t = e.recv_queue.shift();
1990
- if (!t) {
1991
- if (e.type === 1) {
1992
- var n = SOCKFS.websocket_sock_ops.getPeer(e, e.daddr, e.dport);
1993
- if (!n) throw new FS.ErrnoError(53);
1994
- if (n.socket.readyState === n.socket.CLOSING || n.socket.readyState === n.socket.CLOSED) return null;
1995
- throw new FS.ErrnoError(6);
1996
- }
1997
- throw new FS.ErrnoError(6);
1998
- }
1999
- var a = t.data.byteLength || t.data.length, o = t.data.byteOffset || 0, s = t.data.buffer || t.data, l = Math.min(r, a), u = { buffer: new Uint8Array(s, o, l), addr: t.addr, port: t.port };
2000
- if (e.type === 1 && l < a) {
2001
- var d = a - l;
2002
- t.data = new Uint8Array(s, o + l, d), e.recv_queue.unshift(t);
2003
- }
2004
- return u;
2005
- } } };
2006
- function ___syscall_socket(e, r, t) {
2007
- try {
2008
- var n = SOCKFS.createSocket(e, r, t);
2009
- return n.stream.fd;
2010
- } catch (a) {
2011
- if (typeof FS > "u" || a.name !== "ErrnoError") throw a;
2012
- return -a.errno;
2013
- }
2014
- }
2015
- ___syscall_socket.sig = "iiiiiii";
2016
- function ___syscall_stat64(e, r) {
2017
- try {
2018
- return e = SYSCALLS.getStr(e), SYSCALLS.doStat(FS.stat, e, r);
2019
- } catch (t) {
2020
- if (typeof FS > "u" || t.name !== "ErrnoError") throw t;
2021
- return -t.errno;
2022
- }
2023
- }
2024
- ___syscall_stat64.sig = "ipp";
2025
- function ___syscall_unlinkat(e, r, t) {
2026
- try {
2027
- return r = SYSCALLS.getStr(r), r = SYSCALLS.calculateAt(e, r), t === 0 ? FS.unlink(r) : t === 512 ? FS.rmdir(r) : abort("Invalid flags passed to unlinkat"), 0;
2028
- } catch (n) {
2029
- if (typeof FS > "u" || n.name !== "ErrnoError") throw n;
2030
- return -n.errno;
2031
- }
2032
- }
2033
- ___syscall_unlinkat.sig = "iipi";
2034
- var ___table_base = new WebAssembly.Global({ value: "i32", mutable: false }, 1), __abort_js = () => abort("");
2035
- __abort_js.sig = "v";
2036
- var __emscripten_fs_load_embedded_files = (e) => {
2037
- do {
2038
- var r = HEAPU32[e >> 2];
2039
- e += 4;
2040
- var t = HEAPU32[e >> 2];
2041
- e += 4;
2042
- var n = HEAPU32[e >> 2];
2043
- e += 4;
2044
- var a = UTF8ToString(r);
2045
- FS.createPath("/", PATH.dirname(a), true, true), FS.createDataFile(a, null, HEAP8.subarray(n, n + t), true, true, true);
2046
- } while (HEAPU32[e >> 2]);
2047
- };
2048
- __emscripten_fs_load_embedded_files.sig = "vp";
2049
- var runtimeKeepaliveCounter = 0, __emscripten_runtime_keepalive_clear = () => {
2050
- noExitRuntime = false, runtimeKeepaliveCounter = 0;
2051
- };
2052
- __emscripten_runtime_keepalive_clear.sig = "v";
2053
- var __emscripten_throw_longjmp = () => {
2054
- throw 1 / 0;
2055
- };
2056
- __emscripten_throw_longjmp.sig = "v";
2057
- var isLeapYear = (e) => e % 4 === 0 && (e % 100 !== 0 || e % 400 === 0), MONTH_DAYS_LEAP_CUMULATIVE = [0, 31, 60, 91, 121, 152, 182, 213, 244, 274, 305, 335], MONTH_DAYS_REGULAR_CUMULATIVE = [0, 31, 59, 90, 120, 151, 181, 212, 243, 273, 304, 334], ydayFromDate = (e) => {
2058
- var r = isLeapYear(e.getFullYear()), t = r ? MONTH_DAYS_LEAP_CUMULATIVE : MONTH_DAYS_REGULAR_CUMULATIVE, n = t[e.getMonth()] + e.getDate() - 1;
2059
- return n;
2060
- }, INT53_MAX = 9007199254740992, INT53_MIN = -9007199254740992, bigintToI53Checked = (e) => e < INT53_MIN || e > INT53_MAX ? NaN : Number(e);
2061
- function __localtime_js(e, r) {
2062
- e = bigintToI53Checked(e);
2063
- var t = new Date(e * 1e3);
2064
- HEAP32[r >> 2] = t.getSeconds(), HEAP32[r + 4 >> 2] = t.getMinutes(), HEAP32[r + 8 >> 2] = t.getHours(), HEAP32[r + 12 >> 2] = t.getDate(), HEAP32[r + 16 >> 2] = t.getMonth(), HEAP32[r + 20 >> 2] = t.getFullYear() - 1900, HEAP32[r + 24 >> 2] = t.getDay();
2065
- var n = ydayFromDate(t) | 0;
2066
- HEAP32[r + 28 >> 2] = n, HEAP32[r + 36 >> 2] = -(t.getTimezoneOffset() * 60);
2067
- var a = new Date(t.getFullYear(), 0, 1), o = new Date(t.getFullYear(), 6, 1).getTimezoneOffset(), s = a.getTimezoneOffset(), l = (o != s && t.getTimezoneOffset() == Math.min(s, o)) | 0;
2068
- HEAP32[r + 32 >> 2] = l;
2069
- }
2070
- __localtime_js.sig = "vjp";
2071
- var __mktime_js = function(e) {
2072
- var r = (() => {
2073
- var t = new Date(HEAP32[e + 20 >> 2] + 1900, HEAP32[e + 16 >> 2], HEAP32[e + 12 >> 2], HEAP32[e + 8 >> 2], HEAP32[e + 4 >> 2], HEAP32[e >> 2], 0), n = HEAP32[e + 32 >> 2], a = t.getTimezoneOffset(), o = new Date(t.getFullYear(), 0, 1), s = new Date(t.getFullYear(), 6, 1).getTimezoneOffset(), l = o.getTimezoneOffset(), u = Math.min(l, s);
2074
- if (n < 0) HEAP32[e + 32 >> 2] = +(s != l && u == a);
2075
- else if (n > 0 != (u == a)) {
2076
- var d = Math.max(l, s), c = n > 0 ? u : d;
2077
- t.setTime(t.getTime() + (c - a) * 6e4);
2078
- }
2079
- HEAP32[e + 24 >> 2] = t.getDay();
2080
- var m = ydayFromDate(t) | 0;
2081
- HEAP32[e + 28 >> 2] = m, HEAP32[e >> 2] = t.getSeconds(), HEAP32[e + 4 >> 2] = t.getMinutes(), HEAP32[e + 8 >> 2] = t.getHours(), HEAP32[e + 12 >> 2] = t.getDate(), HEAP32[e + 16 >> 2] = t.getMonth(), HEAP32[e + 20 >> 2] = t.getYear();
2082
- var _ = t.getTime();
2083
- return isNaN(_) ? -1 : _ / 1e3;
2084
- })();
2085
- return BigInt(r);
2086
- };
2087
- __mktime_js.sig = "jp";
2088
- var __tzset_js = (e, r, t, n) => {
2089
- var a = (/* @__PURE__ */ new Date()).getFullYear(), o = new Date(a, 0, 1), s = new Date(a, 6, 1), l = o.getTimezoneOffset(), u = s.getTimezoneOffset(), d = Math.max(l, u);
2090
- HEAPU32[e >> 2] = d * 60, HEAP32[r >> 2] = +(l != u);
2091
- var c = (f) => {
2092
- var S = f >= 0 ? "-" : "+", v = Math.abs(f), F = String(Math.floor(v / 60)).padStart(2, "0"), g = String(v % 60).padStart(2, "0");
2093
- return `UTC${S}${F}${g}`;
2094
- }, m = c(l), _ = c(u);
2095
- u < l ? (stringToUTF8(m, t, 17), stringToUTF8(_, n, 17)) : (stringToUTF8(m, n, 17), stringToUTF8(_, t, 17));
2096
- };
2097
- __tzset_js.sig = "vpppp";
2098
- var _emscripten_get_now = () => performance.now();
2099
- _emscripten_get_now.sig = "d";
2100
- var _emscripten_date_now = () => Date.now();
2101
- _emscripten_date_now.sig = "d";
2102
- var nowIsMonotonic = 1, checkWasiClock = (e) => e >= 0 && e <= 3;
2103
- function _clock_time_get(e, r, t) {
2104
- if (r = bigintToI53Checked(r), !checkWasiClock(e)) return 28;
2105
- var n;
2106
- if (e === 0) n = _emscripten_date_now();
2107
- else if (nowIsMonotonic) n = _emscripten_get_now();
2108
- else return 52;
2109
- var a = Math.round(n * 1e3 * 1e3);
2110
- return HEAP64[t >> 3] = BigInt(a), 0;
2111
- }
2112
- _clock_time_get.sig = "iijp";
2113
- var getHeapMax = () => 2147483648, growMemory = (e) => {
2114
- var r = wasmMemory.buffer, t = (e - r.byteLength + 65535) / 65536 | 0;
2115
- try {
2116
- return wasmMemory.grow(t), updateMemoryViews(), 1;
2117
- } catch {
2118
- }
2119
- }, _emscripten_resize_heap = (e) => {
2120
- var r = HEAPU8.length;
2121
- e >>>= 0;
2122
- var t = getHeapMax();
2123
- if (e > t) return false;
2124
- for (var n = 1; n <= 4; n *= 2) {
2125
- var a = r * (1 + 0.2 / n);
2126
- a = Math.min(a, e + 100663296);
2127
- var o = Math.min(t, alignMemory(Math.max(e, a), 65536)), s = growMemory(o);
2128
- if (s) return true;
2129
- }
2130
- return false;
2131
- };
2132
- _emscripten_resize_heap.sig = "ip";
2133
- var ENV = {}, getExecutableName = () => thisProgram || "./this.program", getEnvStrings = () => {
2134
- if (!getEnvStrings.strings) {
2135
- var e = (typeof navigator == "object" && navigator.languages && navigator.languages[0] || "C").replace("-", "_") + ".UTF-8", r = { USER: "web_user", LOGNAME: "web_user", PATH: "/", PWD: "/", HOME: "/home/web_user", LANG: e, _: getExecutableName() };
2136
- for (var t in ENV) ENV[t] === void 0 ? delete r[t] : r[t] = ENV[t];
2137
- var n = [];
2138
- for (var t in r) n.push(`${t}=${r[t]}`);
2139
- getEnvStrings.strings = n;
2140
- }
2141
- return getEnvStrings.strings;
2142
- }, stringToAscii = (e, r) => {
2143
- for (var t = 0; t < e.length; ++t) HEAP8[r++] = e.charCodeAt(t);
2144
- HEAP8[r] = 0;
2145
- }, _environ_get = (e, r) => {
2146
- var t = 0;
2147
- return getEnvStrings().forEach((n, a) => {
2148
- var o = r + t;
2149
- HEAPU32[e + a * 4 >> 2] = o, stringToAscii(n, o), t += n.length + 1;
2150
- }), 0;
2151
- };
2152
- _environ_get.sig = "ipp";
2153
- var _environ_sizes_get = (e, r) => {
2154
- var t = getEnvStrings();
2155
- HEAPU32[e >> 2] = t.length;
2156
- var n = 0;
2157
- return t.forEach((a) => n += a.length + 1), HEAPU32[r >> 2] = n, 0;
2158
- };
2159
- _environ_sizes_get.sig = "ipp";
2160
- var keepRuntimeAlive = () => noExitRuntime || runtimeKeepaliveCounter > 0, _proc_exit = (e) => {
2161
- EXITSTATUS = e, keepRuntimeAlive() || (Module.onExit?.(e), ABORT = true), quit_(e, new ExitStatus(e));
2162
- };
2163
- _proc_exit.sig = "vi";
2164
- var exitJS = (e, r) => {
2165
- EXITSTATUS = e, keepRuntimeAlive() || exitRuntime(), _proc_exit(e);
2166
- }, _exit = exitJS;
2167
- _exit.sig = "vi";
2168
- function _fd_close(e) {
2169
- try {
2170
- var r = SYSCALLS.getStreamFromFD(e);
2171
- return FS.close(r), 0;
2172
- } catch (t) {
2173
- if (typeof FS > "u" || t.name !== "ErrnoError") throw t;
2174
- return t.errno;
2175
- }
2176
- }
2177
- _fd_close.sig = "ii";
2178
- function _fd_fdstat_get(e, r) {
2179
- try {
2180
- var t = 0, n = 0, a = 0, o = SYSCALLS.getStreamFromFD(e), s = o.tty ? 2 : FS.isDir(o.mode) ? 3 : FS.isLink(o.mode) ? 7 : 4;
2181
- return HEAP8[r] = s, HEAP16[r + 2 >> 1] = a, HEAP64[r + 8 >> 3] = BigInt(t), HEAP64[r + 16 >> 3] = BigInt(n), 0;
2182
- } catch (l) {
2183
- if (typeof FS > "u" || l.name !== "ErrnoError") throw l;
2184
- return l.errno;
2185
- }
2186
- }
2187
- _fd_fdstat_get.sig = "iip";
2188
- var doReadv = (e, r, t, n) => {
2189
- for (var a = 0, o = 0; o < t; o++) {
2190
- var s = HEAPU32[r >> 2], l = HEAPU32[r + 4 >> 2];
2191
- r += 8;
2192
- var u = FS.read(e, HEAP8, s, l, n);
2193
- if (u < 0) return -1;
2194
- if (a += u, u < l) break;
2195
- typeof n < "u" && (n += u);
2196
- }
2197
- return a;
2198
- };
2199
- function _fd_read(e, r, t, n) {
2200
- try {
2201
- var a = SYSCALLS.getStreamFromFD(e), o = doReadv(a, r, t);
2202
- return HEAPU32[n >> 2] = o, 0;
2203
- } catch (s) {
2204
- if (typeof FS > "u" || s.name !== "ErrnoError") throw s;
2205
- return s.errno;
2206
- }
2207
- }
2208
- _fd_read.sig = "iippp";
2209
- function _fd_seek(e, r, t, n) {
2210
- r = bigintToI53Checked(r);
2211
- try {
2212
- if (isNaN(r)) return 61;
2213
- var a = SYSCALLS.getStreamFromFD(e);
2214
- return FS.llseek(a, r, t), HEAP64[n >> 3] = BigInt(a.position), a.getdents && r === 0 && t === 0 && (a.getdents = null), 0;
2215
- } catch (o) {
2216
- if (typeof FS > "u" || o.name !== "ErrnoError") throw o;
2217
- return o.errno;
2218
- }
2219
- }
2220
- _fd_seek.sig = "iijip";
2221
- function _fd_sync(e) {
2222
- try {
2223
- var r = SYSCALLS.getStreamFromFD(e);
2224
- return r.stream_ops?.fsync ? r.stream_ops.fsync(r) : 0;
2225
- } catch (t) {
2226
- if (typeof FS > "u" || t.name !== "ErrnoError") throw t;
2227
- return t.errno;
2228
- }
2229
- }
2230
- _fd_sync.sig = "ii";
2231
- var doWritev = (e, r, t, n) => {
2232
- for (var a = 0, o = 0; o < t; o++) {
2233
- var s = HEAPU32[r >> 2], l = HEAPU32[r + 4 >> 2];
2234
- r += 8;
2235
- var u = FS.write(e, HEAP8, s, l, n);
2236
- if (u < 0) return -1;
2237
- if (a += u, u < l) break;
2238
- typeof n < "u" && (n += u);
2239
- }
2240
- return a;
2241
- };
2242
- function _fd_write(e, r, t, n) {
2243
- try {
2244
- var a = SYSCALLS.getStreamFromFD(e), o = doWritev(a, r, t);
2245
- return HEAPU32[n >> 2] = o, 0;
2246
- } catch (s) {
2247
- if (typeof FS > "u" || s.name !== "ErrnoError") throw s;
2248
- return s.errno;
2249
- }
2250
- }
2251
- _fd_write.sig = "iippp";
2252
- var inetPton4 = (e) => {
2253
- for (var r = e.split("."), t = 0; t < 4; t++) {
2254
- var n = Number(r[t]);
2255
- if (isNaN(n)) return null;
2256
- r[t] = n;
2257
- }
2258
- return (r[0] | r[1] << 8 | r[2] << 16 | r[3] << 24) >>> 0;
2259
- }, jstoi_q = (e) => parseInt(e), inetPton6 = (e) => {
2260
- var r, t, n, a, o = /^((?=.*::)(?!.*::.+::)(::)?([\dA-F]{1,4}:(:|\b)|){5}|([\dA-F]{1,4}:){6})((([\dA-F]{1,4}((?!\3)::|:\b|$))|(?!\2\3)){2}|(((2[0-4]|1\d|[1-9])?\d|25[0-5])\.?\b){4})$/i, s = [];
2261
- if (!o.test(e)) return null;
2262
- if (e === "::") return [0, 0, 0, 0, 0, 0, 0, 0];
2263
- for (e.startsWith("::") ? e = e.replace("::", "Z:") : e = e.replace("::", ":Z:"), e.indexOf(".") > 0 ? (e = e.replace(new RegExp("[.]", "g"), ":"), r = e.split(":"), r[r.length - 4] = jstoi_q(r[r.length - 4]) + jstoi_q(r[r.length - 3]) * 256, r[r.length - 3] = jstoi_q(r[r.length - 2]) + jstoi_q(r[r.length - 1]) * 256, r = r.slice(0, r.length - 2)) : r = e.split(":"), n = 0, a = 0, t = 0; t < r.length; t++) if (typeof r[t] == "string") if (r[t] === "Z") {
2264
- for (a = 0; a < 8 - r.length + 1; a++) s[t + a] = 0;
2265
- n = a - 1;
2266
- } else s[t + n] = _htons(parseInt(r[t], 16));
2267
- else s[t + n] = r[t];
2268
- return [s[1] << 16 | s[0], s[3] << 16 | s[2], s[5] << 16 | s[4], s[7] << 16 | s[6]];
2269
- }, DNS = { address_map: { id: 1, addrs: {}, names: {} }, lookup_name(e) {
2270
- var r = inetPton4(e);
2271
- if (r !== null || (r = inetPton6(e), r !== null)) return e;
2272
- var t;
2273
- if (DNS.address_map.addrs[e]) t = DNS.address_map.addrs[e];
2274
- else {
2275
- var n = DNS.address_map.id++;
2276
- assert(n < 65535, "exceeded max address mappings of 65535"), t = "172.29." + (n & 255) + "." + (n & 65280), DNS.address_map.names[t] = e, DNS.address_map.addrs[e] = t;
2277
- }
2278
- return t;
2279
- }, lookup_addr(e) {
2280
- return DNS.address_map.names[e] ? DNS.address_map.names[e] : null;
2281
- } }, inetNtop4 = (e) => (e & 255) + "." + (e >> 8 & 255) + "." + (e >> 16 & 255) + "." + (e >> 24 & 255), inetNtop6 = (e) => {
2282
- var r = "", t = 0, n = 0, a = 0, o = 0, s = 0, l = 0, u = [e[0] & 65535, e[0] >> 16, e[1] & 65535, e[1] >> 16, e[2] & 65535, e[2] >> 16, e[3] & 65535, e[3] >> 16], d = true, c = "";
2283
- for (l = 0; l < 5; l++) if (u[l] !== 0) {
2284
- d = false;
2285
- break;
2286
- }
2287
- if (d) {
2288
- if (c = inetNtop4(u[6] | u[7] << 16), u[5] === -1) return r = "::ffff:", r += c, r;
2289
- if (u[5] === 0) return r = "::", c === "0.0.0.0" && (c = ""), c === "0.0.0.1" && (c = "1"), r += c, r;
2290
- }
2291
- for (t = 0; t < 8; t++) u[t] === 0 && (t - a > 1 && (s = 0), a = t, s++), s > n && (n = s, o = t - n + 1);
2292
- for (t = 0; t < 8; t++) {
2293
- if (n > 1 && u[t] === 0 && t >= o && t < o + n) {
2294
- t === o && (r += ":", o === 0 && (r += ":"));
2295
- continue;
2296
- }
2297
- r += Number(_ntohs(u[t] & 65535)).toString(16), r += t < 7 ? ":" : "";
2298
- }
2299
- return r;
2300
- }, writeSockaddr = (e, r, t, n, a) => {
2301
- switch (r) {
2302
- case 2:
2303
- t = inetPton4(t), zeroMemory(e, 16), a && (HEAP32[a >> 2] = 16), HEAP16[e >> 1] = r, HEAP32[e + 4 >> 2] = t, HEAP16[e + 2 >> 1] = _htons(n);
2304
- break;
2305
- case 10:
2306
- t = inetPton6(t), zeroMemory(e, 28), a && (HEAP32[a >> 2] = 28), HEAP32[e >> 2] = r, HEAP32[e + 8 >> 2] = t[0], HEAP32[e + 12 >> 2] = t[1], HEAP32[e + 16 >> 2] = t[2], HEAP32[e + 20 >> 2] = t[3], HEAP16[e + 2 >> 1] = _htons(n);
2307
- break;
2308
- default:
2309
- return 5;
2310
- }
2311
- return 0;
2312
- }, _getaddrinfo = (e, r, t, n) => {
2313
- var a = 0, o = 0, s = 0, l = 0, u = 0, d = 0, c;
2314
- function m(_, f, S, v, F, g) {
2315
- var w, A, y, p;
2316
- return A = _ === 10 ? 28 : 16, F = _ === 10 ? inetNtop6(F) : inetNtop4(F), w = _malloc(A), p = writeSockaddr(w, _, F, g), assert(!p), y = _malloc(32), HEAP32[y + 4 >> 2] = _, HEAP32[y + 8 >> 2] = f, HEAP32[y + 12 >> 2] = S, HEAPU32[y + 24 >> 2] = v, HEAPU32[y + 20 >> 2] = w, _ === 10 ? HEAP32[y + 16 >> 2] = 28 : HEAP32[y + 16 >> 2] = 16, HEAP32[y + 28 >> 2] = 0, y;
2317
- }
2318
- if (t && (s = HEAP32[t >> 2], l = HEAP32[t + 4 >> 2], u = HEAP32[t + 8 >> 2], d = HEAP32[t + 12 >> 2]), u && !d && (d = u === 2 ? 17 : 6), !u && d && (u = d === 17 ? 2 : 1), d === 0 && (d = 6), u === 0 && (u = 1), !e && !r) return -2;
2319
- if (s & -1088 || t !== 0 && HEAP32[t >> 2] & 2 && !e) return -1;
2320
- if (s & 32) return -2;
2321
- if (u !== 0 && u !== 1 && u !== 2) return -7;
2322
- if (l !== 0 && l !== 2 && l !== 10) return -6;
2323
- if (r && (r = UTF8ToString(r), o = parseInt(r, 10), isNaN(o))) return s & 1024 ? -2 : -8;
2324
- if (!e) return l === 0 && (l = 2), s & 1 || (l === 2 ? a = _htonl(2130706433) : a = [0, 0, 0, _htonl(1)]), c = m(l, u, d, null, a, o), HEAPU32[n >> 2] = c, 0;
2325
- if (e = UTF8ToString(e), a = inetPton4(e), a !== null) if (l === 0 || l === 2) l = 2;
2326
- else if (l === 10 && s & 8) a = [0, 0, _htonl(65535), a], l = 10;
2327
- else return -2;
2328
- else if (a = inetPton6(e), a !== null) if (l === 0 || l === 10) l = 10;
2329
- else return -2;
2330
- return a != null ? (c = m(l, u, d, e, a, o), HEAPU32[n >> 2] = c, 0) : s & 4 ? -2 : (e = DNS.lookup_name(e), a = inetPton4(e), l === 0 ? l = 2 : l === 10 && (a = [0, 0, _htonl(65535), a]), c = m(l, u, d, null, a, o), HEAPU32[n >> 2] = c, 0);
2331
- };
2332
- _getaddrinfo.sig = "ipppp";
2333
- var readSockaddr = (e, r) => {
2334
- var t = HEAP16[e >> 1], n = _ntohs(HEAPU16[e + 2 >> 1]), a;
2335
- switch (t) {
2336
- case 2:
2337
- if (r !== 16) return { errno: 28 };
2338
- a = HEAP32[e + 4 >> 2], a = inetNtop4(a);
2339
- break;
2340
- case 10:
2341
- if (r !== 28) return { errno: 28 };
2342
- a = [HEAP32[e + 8 >> 2], HEAP32[e + 12 >> 2], HEAP32[e + 16 >> 2], HEAP32[e + 20 >> 2]], a = inetNtop6(a);
2343
- break;
2344
- default:
2345
- return { errno: 5 };
2346
- }
2347
- return { family: t, addr: a, port: n };
2348
- }, _getnameinfo = (e, r, t, n, a, o, s) => {
2349
- var l = readSockaddr(e, r);
2350
- if (l.errno) return -6;
2351
- var u = l.port, d = l.addr, c = false;
2352
- if (t && n) {
2353
- var m;
2354
- if (s & 1 || !(m = DNS.lookup_addr(d))) {
2355
- if (s & 8) return -2;
2356
- } else d = m;
2357
- var _ = stringToUTF8(d, t, n);
2358
- _ + 1 >= n && (c = true);
2359
- }
2360
- if (a && o) {
2361
- u = "" + u;
2362
- var _ = stringToUTF8(u, a, o);
2363
- _ + 1 >= o && (c = true);
2364
- }
2365
- return c ? -12 : 0;
2366
- };
2367
- _getnameinfo.sig = "ipipipii";
2368
- var handleException = (e) => {
2369
- if (e instanceof ExitStatus || e == "unwind") return EXITSTATUS;
2370
- quit_(1, e);
2371
- }, stackAlloc = (e) => __emscripten_stack_alloc(e), stringToUTF8OnStack = (e) => {
2372
- var r = lengthBytesUTF8(e) + 1, t = stackAlloc(r);
2373
- return stringToUTF8(e, t, r), t;
2374
- }, removeFunction = (e) => {
2375
- functionsInTableMap.delete(getWasmTableEntry(e)), setWasmTableEntry(e, null), freeTableIndexes.push(e);
2376
- }, FS_createPath = FS.createPath, FS_unlink = (e) => FS.unlink(e), FS_createLazyFile = FS.createLazyFile, FS_createDevice = FS.createDevice;
2377
- registerWasmPlugin(), FS.createPreloadedFile = FS_createPreloadedFile, FS.staticInit(), Module.FS_createPath = FS.createPath, Module.FS_createDataFile = FS.createDataFile, Module.FS_createPreloadedFile = FS.createPreloadedFile, Module.FS_unlink = FS.unlink, Module.FS_createLazyFile = FS.createLazyFile, Module.FS_createDevice = FS.createDevice, MEMFS.doesNotExistError = new FS.ErrnoError(44), MEMFS.doesNotExistError.stack = "<generic error, no stack>";
2378
- var wasmImports = { __call_sighandler: ___call_sighandler, __heap_base: ___heap_base, __indirect_function_table: wasmTable, __memory_base: ___memory_base, __stack_pointer: ___stack_pointer, __syscall__newselect: ___syscall__newselect, __syscall_dup: ___syscall_dup, __syscall_faccessat: ___syscall_faccessat, __syscall_fadvise64: ___syscall_fadvise64, __syscall_fcntl64: ___syscall_fcntl64, __syscall_fstat64: ___syscall_fstat64, __syscall_getcwd: ___syscall_getcwd, __syscall_getdents64: ___syscall_getdents64, __syscall_ioctl: ___syscall_ioctl, __syscall_lstat64: ___syscall_lstat64, __syscall_mkdirat: ___syscall_mkdirat, __syscall_newfstatat: ___syscall_newfstatat, __syscall_openat: ___syscall_openat, __syscall_pipe: ___syscall_pipe, __syscall_readlinkat: ___syscall_readlinkat, __syscall_socket: ___syscall_socket, __syscall_stat64: ___syscall_stat64, __syscall_unlinkat: ___syscall_unlinkat, __table_base: ___table_base, _abort_js: __abort_js, _emscripten_fs_load_embedded_files: __emscripten_fs_load_embedded_files, _emscripten_runtime_keepalive_clear: __emscripten_runtime_keepalive_clear, _emscripten_throw_longjmp: __emscripten_throw_longjmp, _localtime_js: __localtime_js, _mktime_js: __mktime_js, _tzset_js: __tzset_js, clock_time_get: _clock_time_get, emscripten_date_now: _emscripten_date_now, emscripten_resize_heap: _emscripten_resize_heap, environ_get: _environ_get, environ_sizes_get: _environ_sizes_get, exit: _exit, fd_close: _fd_close, fd_fdstat_get: _fd_fdstat_get, fd_read: _fd_read, fd_seek: _fd_seek, fd_sync: _fd_sync, fd_write: _fd_write, getaddrinfo: _getaddrinfo, getnameinfo: _getnameinfo, invoke_ii, invoke_iiii, invoke_vii, memory: wasmMemory, proc_exit: _proc_exit }, wasmExports;
2379
- createWasm();
2380
- var ___wasm_call_ctors = () => (___wasm_call_ctors = wasmExports.__wasm_call_ctors)(), _main = Module._main = (e, r) => (_main = Module._main = wasmExports.__main_argc_argv)(e, r), _fflush = (e) => (_fflush = wasmExports.fflush)(e), _malloc = (e) => (_malloc = wasmExports.malloc)(e), _calloc = (e, r) => (_calloc = wasmExports.calloc)(e, r), _setsockopt = Module._setsockopt = (e, r, t, n, a) => (_setsockopt = Module._setsockopt = wasmExports.setsockopt)(e, r, t, n, a), _connect = Module._connect = (e, r, t) => (_connect = Module._connect = wasmExports.connect)(e, r, t), _send = Module._send = (e, r, t, n) => (_send = Module._send = wasmExports.send)(e, r, t, n), _recv = Module._recv = (e, r, t, n) => (_recv = Module._recv = wasmExports.recv)(e, r, t, n), _getsockopt = Module._getsockopt = (e, r, t, n, a) => (_getsockopt = Module._getsockopt = wasmExports.getsockopt)(e, r, t, n, a), _getsockname = Module._getsockname = (e, r, t) => (_getsockname = Module._getsockname = wasmExports.getsockname)(e, r, t), _poll = Module._poll = (e, r, t) => (_poll = Module._poll = wasmExports.poll)(e, r, t), _set_read_write_cbs = Module._set_read_write_cbs = (e, r) => (_set_read_write_cbs = Module._set_read_write_cbs = wasmExports.set_read_write_cbs)(e, r), _fcntl = Module._fcntl = (e, r, t) => (_fcntl = Module._fcntl = wasmExports.fcntl)(e, r, t), ___funcs_on_exit = () => (___funcs_on_exit = wasmExports.__funcs_on_exit)(), _htonl = (e) => (_htonl = wasmExports.htonl)(e), _htons = (e) => (_htons = wasmExports.htons)(e), _ntohs = (e) => (_ntohs = wasmExports.ntohs)(e), _setThrew = (e, r) => (_setThrew = wasmExports.setThrew)(e, r), __emscripten_stack_restore = (e) => (__emscripten_stack_restore = wasmExports._emscripten_stack_restore)(e), __emscripten_stack_alloc = (e) => (__emscripten_stack_alloc = wasmExports._emscripten_stack_alloc)(e), _emscripten_stack_get_current = () => (_emscripten_stack_get_current = wasmExports.emscripten_stack_get_current)(), ___wasm_apply_data_relocs = () => (___wasm_apply_data_relocs = wasmExports.__wasm_apply_data_relocs)(), ___emscripten_embedded_file_data = Module.___emscripten_embedded_file_data = 198860;
2381
- function invoke_iiii(e, r, t, n) {
2382
- var a = stackSave();
2383
- try {
2384
- return getWasmTableEntry(e)(r, t, n);
2385
- } catch (o) {
2386
- if (stackRestore(a), o !== o + 0) throw o;
2387
- _setThrew(1, 0);
2388
- }
2389
- }
2390
- function invoke_ii(e, r) {
2391
- var t = stackSave();
2392
- try {
2393
- return getWasmTableEntry(e)(r);
2394
- } catch (n) {
2395
- if (stackRestore(t), n !== n + 0) throw n;
2396
- _setThrew(1, 0);
2397
- }
2398
- }
2399
- function invoke_vii(e, r, t) {
2400
- var n = stackSave();
2401
- try {
2402
- getWasmTableEntry(e)(r, t);
2403
- } catch (a) {
2404
- if (stackRestore(n), a !== a + 0) throw a;
2405
- _setThrew(1, 0);
2406
- }
2407
- }
2408
- Module.addRunDependency = addRunDependency, Module.removeRunDependency = removeRunDependency, Module.addFunction = addFunction, Module.removeFunction = removeFunction, Module.FS_createPreloadedFile = FS_createPreloadedFile, Module.FS_unlink = FS_unlink, Module.FS_createPath = FS_createPath, Module.FS_createDevice = FS_createDevice, Module.FS = FS, Module.FS_createDataFile = FS_createDataFile, Module.FS_createLazyFile = FS_createLazyFile, Module.MEMFS = MEMFS;
2409
- var calledRun;
2410
- dependenciesFulfilled = function e() {
2411
- calledRun || run(), calledRun || (dependenciesFulfilled = e);
2412
- };
2413
- function callMain(e = []) {
2414
- var r = resolveGlobalSymbol("main").sym;
2415
- if (r) {
2416
- e.unshift(thisProgram);
2417
- var t = e.length, n = stackAlloc((t + 1) * 4), a = n;
2418
- e.forEach((s) => {
2419
- HEAPU32[a >> 2] = stringToUTF8OnStack(s), a += 4;
2420
- }), HEAPU32[a >> 2] = 0;
2421
- try {
2422
- var o = r(t, n);
2423
- return exitJS(o, true), o;
2424
- } catch (s) {
2425
- return handleException(s);
2426
- }
2427
- }
2428
- }
2429
- function run(e = arguments_) {
2430
- if (runDependencies > 0 || (preRun(), runDependencies > 0)) return;
2431
- function r() {
2432
- calledRun || (calledRun = true, Module.calledRun = true, !ABORT && (initRuntime(), preMain(), readyPromiseResolve(Module), Module.onRuntimeInitialized?.(), shouldRunNow && callMain(e), postRun()));
2433
- }
2434
- Module.setStatus ? (Module.setStatus("Running..."), setTimeout(() => {
2435
- setTimeout(() => Module.setStatus(""), 1), r();
2436
- }, 1)) : r();
2437
- }
2438
- if (Module.preInit) for (typeof Module.preInit == "function" && (Module.preInit = [Module.preInit]); Module.preInit.length > 0; ) Module.preInit.pop()();
2439
- var shouldRunNow = true;
2440
- return Module.noInitialRun && (shouldRunNow = false), run(), moduleRtn = readyPromise, moduleRtn;
2441
- };
2442
- })();
2443
- var U = j;
2444
- var L = U;
2445
- var N = "/tmp/out.sql";
2446
- function W(e, r) {
2447
- let t = new Uint8Array(e.byteLength + r.byteLength);
2448
- return t.set(new Uint8Array(e), 0), t.set(new Uint8Array(r), e.byteLength), t;
2449
- }
2450
- async function z({ pg: e, args: r }) {
2451
- let t, n, a = 0, o = "", s = "", u = await L({ arguments: r, noExitRuntime: false, print: (c) => {
2452
- s += c;
2453
- }, printErr: (c) => {
2454
- o += c;
2455
- }, onExit: (c) => {
2456
- a = c;
2457
- }, preRun: [(c) => {
2458
- c.onRuntimeInitialized = () => {
2459
- let m = new Uint8Array();
2460
- t = c.addFunction((_, f) => {
2461
- let S;
2462
- try {
2463
- S = c.HEAPU8.subarray(_, _ + f);
2464
- } catch (F) {
2465
- throw console.error("error", F), F;
2466
- }
2467
- let v = e.execProtocolRawSync(S);
2468
- return m = W(m, v), f;
2469
- }, "iii"), n = c.addFunction((_, f) => {
2470
- let S = m.length;
2471
- S > f && (S = f);
2472
- try {
2473
- c.HEAP8.set(m.subarray(0, S), _);
2474
- } catch (v) {
2475
- console.error(v);
2476
- }
2477
- return m = m.subarray(S, m.length), S;
2478
- }, "iii"), c._set_read_write_cbs(n, t), c.FS.chmod("/home/web_user/.pgpass", 384);
2479
- };
2480
- }] }), d = "";
2481
- return a || (d = u.FS.readFile(N, { encoding: "utf8" })), { exitCode: a, fileContents: d, stderr: o, stdout: s };
2482
- }
2483
- async function te({ pg: e, args: r, fileName: t = "dump.sql" }) {
2484
- let a = (await e.query("SHOW SEARCH_PATH;")).rows[0].search_path, o = ["-U", "postgres", "--inserts", "-j", "1", "-f", N, "postgres"], s = await z({ pg: e, args: [...r ?? [], ...o] });
2485
- if (e.exec(`DEALLOCATE ALL; SET SEARCH_PATH = ${a}`), s.exitCode !== 0) throw new Error(`pg_dump failed with exit code ${s.exitCode}.
2486
- Error message: ${s.stderr}`);
2487
- return new File([s.fileContents], t, { type: "text/plain" });
2488
- }
2489
- export {
2490
- te as pgDump
2491
- };
2492
- //# sourceMappingURL=pg_dump-SG4KYBUB.js.map