UNPKG

usfm-grammar-web

Version:

Uses the tree-sitter-usfm3 parser to convert USFM files to other formats such as USJ, USX, and CS, and converts them back to USFM.

782 lines (771 loc) 892 kB
import $5OpyM$assert from "assert"; import {DOMImplementation as $5OpyM$DOMImplementation} from "xmldom"; import $5OpyM$xpath from "xpath"; import $5OpyM$ajv from "ajv"; function $parcel$interopDefault(a) { return a && a.__esModule ? a.default : a; } var $parcel$global = globalThis; var $parcel$modules = {}; var $parcel$inits = {}; var parcelRequire = $parcel$global["parcelRequire9afa"]; if (parcelRequire == null) { parcelRequire = function(id) { if (id in $parcel$modules) { return $parcel$modules[id].exports; } if (id in $parcel$inits) { var init = $parcel$inits[id]; delete $parcel$inits[id]; var module = {id: id, exports: {}}; $parcel$modules[id] = module; init.call(module.exports, module, module.exports); return module.exports; } var err = new Error("Cannot find module '" + id + "'"); err.code = 'MODULE_NOT_FOUND'; throw err; }; parcelRequire.register = function register(id, init) { $parcel$inits[id] = init; }; $parcel$global["parcelRequire9afa"] = parcelRequire; } var parcelRegister = parcelRequire.register; parcelRegister("dc2P8", function(module, exports) { var Module = void 0 !== Module ? Module : {}; var TreeSitter = function() { var initPromise, document = "object" == typeof window ? { currentScript: window.document.currentScript } : null; class Parser { constructor(){ this.initialize(); } initialize() { throw new Error("cannot construct a Parser before calling `init()`"); } static init(moduleOptions) { return initPromise || (Module = Object.assign({}, Module, moduleOptions), initPromise = new Promise((resolveInitPromise)=>{ var moduleOverrides = Object.assign({}, Module), arguments_ = [], thisProgram = "./this.program", quit_ = (e, t)=>{ throw t; }, ENVIRONMENT_IS_WEB = "object" == typeof window, ENVIRONMENT_IS_WORKER = "function" == typeof importScripts, ENVIRONMENT_IS_NODE = false, scriptDirectory = "", read_, readAsync, readBinary; function locateFile(e) { return Module.locateFile ? Module.locateFile(e, scriptDirectory) : scriptDirectory + e; } if (ENVIRONMENT_IS_NODE) { var fs = (parcelRequire("jGIDp")), nodePath = (parcelRequire("jGIDp")); scriptDirectory = ENVIRONMENT_IS_WORKER ? nodePath.dirname(scriptDirectory) + "/" : __dirname + "/", read_ = (e, t)=>(e = isFileURI(e) ? new URL(e) : nodePath.normalize(e), fs.readFileSync(e, t ? void 0 : "utf8")), readBinary = (e)=>{ var t = read_(e, !0); return t.buffer || (t = new Uint8Array(t)), t; }, readAsync = (e, t, _, s = !0)=>{ e = isFileURI(e) ? new URL(e) : nodePath.normalize(e), fs.readFile(e, s ? void 0 : "utf8", (e, r)=>{ e ? _(e) : t(s ? r.buffer : r); }); }, !Module.thisProgram && process.argv.length > 1 && (thisProgram = process.argv[1].replace(/\\/g, "/")), arguments_ = process.argv.slice(2), module.exports = Module, quit_ = (e, t)=>{ throw process.exitCode = e, t; }; } else (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER) && (ENVIRONMENT_IS_WORKER ? scriptDirectory = self.location.href : void 0 !== document && document.currentScript && (scriptDirectory = document.currentScript.src), scriptDirectory = scriptDirectory.startsWith("blob:") ? "" : scriptDirectory.substr(0, scriptDirectory.replace(/[?#].*/, "").lastIndexOf("/") + 1), read_ = (e)=>{ var t = new XMLHttpRequest; return t.open("GET", e, !1), t.send(null), t.responseText; }, ENVIRONMENT_IS_WORKER && (readBinary = (e)=>{ var t = new XMLHttpRequest; return t.open("GET", e, !1), t.responseType = "arraybuffer", t.send(null), new Uint8Array(t.response); }), readAsync = (e, t, _)=>{ var s = new XMLHttpRequest; s.open("GET", e, !0), s.responseType = "arraybuffer", s.onload = ()=>{ 200 == s.status || 0 == s.status && s.response ? t(s.response) : _(); }, s.onerror = _, s.send(null); }); var out = Module.print || console.log.bind(console), err = Module.printErr || console.error.bind(console); Object.assign(Module, moduleOverrides), moduleOverrides = null, Module.arguments && (arguments_ = Module.arguments), Module.thisProgram && (thisProgram = Module.thisProgram), Module.quit && (quit_ = Module.quit); var dynamicLibraries = Module.dynamicLibraries || [], wasmBinary, wasmMemory; Module.wasmBinary && (wasmBinary = Module.wasmBinary), "object" != typeof WebAssembly && abort("no native wasm support detected"); var ABORT = !1, EXITSTATUS, HEAP8, HEAPU8, HEAP16, HEAPU16, HEAP32, HEAPU32, HEAPF32, HEAPF64; function updateMemoryViews() { var e = wasmMemory.buffer; 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); } var INITIAL_MEMORY = Module.INITIAL_MEMORY || 33554432; wasmMemory = Module.wasmMemory ? Module.wasmMemory : new WebAssembly.Memory({ initial: INITIAL_MEMORY / 65536, maximum: 32768 }), updateMemoryViews(), INITIAL_MEMORY = wasmMemory.buffer.byteLength; var __ATPRERUN__ = [], __ATINIT__ = [], __ATMAIN__ = [], __ATPOSTRUN__ = [], __RELOC_FUNCS__ = [], runtimeInitialized = !1; function preRun() { if (Module.preRun) for("function" == typeof Module.preRun && (Module.preRun = [ Module.preRun ]); Module.preRun.length;)addOnPreRun(Module.preRun.shift()); callRuntimeCallbacks(__ATPRERUN__); } function initRuntime() { runtimeInitialized = !0, callRuntimeCallbacks(__RELOC_FUNCS__), callRuntimeCallbacks(__ATINIT__); } function preMain() { callRuntimeCallbacks(__ATMAIN__); } function postRun() { if (Module.postRun) for("function" == typeof Module.postRun && (Module.postRun = [ Module.postRun ]); Module.postRun.length;)addOnPostRun(Module.postRun.shift()); callRuntimeCallbacks(__ATPOSTRUN__); } function addOnPreRun(e) { __ATPRERUN__.unshift(e); } function addOnInit(e) { __ATINIT__.unshift(e); } function addOnPostRun(e) { __ATPOSTRUN__.unshift(e); } var runDependencies = 0, runDependencyWatcher = null, dependenciesFulfilled = null; function getUniqueRunDependency(e) { return e; } function addRunDependency(e) { runDependencies++, Module.monitorRunDependencies?.(runDependencies); } function removeRunDependency(e) { if (runDependencies--, Module.monitorRunDependencies?.(runDependencies), 0 == runDependencies && (null !== runDependencyWatcher && (clearInterval(runDependencyWatcher), runDependencyWatcher = null), dependenciesFulfilled)) { var t = dependenciesFulfilled; dependenciesFulfilled = null, t(); } } function abort(e) { throw Module.onAbort?.(e), err(e = "Aborted(" + e + ")"), ABORT = !0, EXITSTATUS = 1, e += ". Build with -sASSERTIONS for more info.", new WebAssembly.RuntimeError(e); } var dataURIPrefix = "data:application/octet-stream;base64,", isDataURI = (e)=>e.startsWith(dataURIPrefix), isFileURI = (e)=>e.startsWith("file://"), wasmBinaryFile; function getBinarySync(e) { if (e == wasmBinaryFile && wasmBinary) return new Uint8Array(wasmBinary); if (readBinary) return readBinary(e); throw "both async and sync fetching of the wasm failed"; } function getBinaryPromise(e) { if (!wasmBinary && (ENVIRONMENT_IS_WEB || ENVIRONMENT_IS_WORKER)) { if ("function" == typeof fetch && !isFileURI(e)) return fetch(e, { credentials: "same-origin" }).then((t)=>{ if (!t.ok) throw `failed to load wasm binary file at '${e}'`; return t.arrayBuffer(); }).catch(()=>getBinarySync(e)); if (readAsync) return new Promise((t, _)=>{ readAsync(e, (e)=>t(new Uint8Array(e)), _); }); } return Promise.resolve().then(()=>getBinarySync(e)); } function instantiateArrayBuffer(e, t, _) { return getBinaryPromise(e).then((e)=>WebAssembly.instantiate(e, t)).then(_, (e)=>{ err(`failed to asynchronously prepare wasm: ${e}`), abort(e); }); } function instantiateAsync(e, t, _, s) { return e || "function" != typeof WebAssembly.instantiateStreaming || isDataURI(t) || isFileURI(t) || ENVIRONMENT_IS_NODE || "function" != typeof fetch ? instantiateArrayBuffer(t, _, s) : fetch(t, { credentials: "same-origin" }).then((e)=>WebAssembly.instantiateStreaming(e, _).then(s, function(e) { return err(`wasm streaming compile failed: ${e}`), err("falling back to ArrayBuffer instantiation"), instantiateArrayBuffer(t, _, s); })); } function createWasm() { var e = { env: wasmImports, wasi_snapshot_preview1: wasmImports, "GOT.mem": new Proxy(wasmImports, GOTHandler), "GOT.func": new Proxy(wasmImports, GOTHandler) }; function t(e, t) { wasmExports = e.exports, wasmExports = relocateExports(wasmExports, 1024); var _ = getDylinkMetadata(t); return _.neededDynlibs && (dynamicLibraries = _.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; } if (addRunDependency("wasm-instantiate"), Module.instantiateWasm) try { return Module.instantiateWasm(e, t); } catch (e) { return err(`Module.instantiateWasm callback failed with error: ${e}`), !1; } return instantiateAsync(wasmBinary, wasmBinaryFile, e, function(e) { t(e.instance, e.module); }), {}; } wasmBinaryFile = "tree-sitter.wasm", isDataURI(wasmBinaryFile) || (wasmBinaryFile = locateFile(wasmBinaryFile)); var ASM_CONSTS = {}; function ExitStatus(e) { this.name = "ExitStatus", this.message = `Program terminated with exit(${e})`, this.status = e; } var GOT = {}, currentModuleWeakSymbols = new Set([]), GOTHandler = { get (e, t) { var _ = GOT[t]; return _ || (_ = GOT[t] = new WebAssembly.Global({ value: "i32", mutable: !0 })), currentModuleWeakSymbols.has(t) || (_.required = !0), _; } }, callRuntimeCallbacks = (e)=>{ for(; e.length > 0;)e.shift()(Module); }, UTF8Decoder = "undefined" != typeof TextDecoder ? new TextDecoder("utf8") : void 0, UTF8ArrayToString = (e, t, _)=>{ for(var s = t + _, r = t; e[r] && !(r >= s);)++r; if (r - t > 16 && e.buffer && UTF8Decoder) return UTF8Decoder.decode(e.subarray(t, r)); for(var a = ""; t < r;){ var o = e[t++]; if (128 & o) { var n = 63 & e[t++]; if (192 != (224 & o)) { var l = 63 & e[t++]; if ((o = 224 == (240 & o) ? (15 & o) << 12 | n << 6 | l : (7 & o) << 18 | n << 12 | l << 6 | 63 & e[t++]) < 65536) a += String.fromCharCode(o); else { var d = o - 65536; a += String.fromCharCode(55296 | d >> 10, 56320 | 1023 & d); } } else a += String.fromCharCode((31 & o) << 6 | n); } else a += String.fromCharCode(o); } return a; }, getDylinkMetadata = (e)=>{ var t = 0, _ = 0; function s() { for(var _ = 0, s = 1;;){ var r = e[t++]; if (_ += (127 & r) * s, s *= 128, !(128 & r)) break; } return _; } function r() { var _ = s(); return UTF8ArrayToString(e, (t += _) - _, _); } function a(e, t) { if (e) throw new Error(t); } var o = "dylink.0"; if (e instanceof WebAssembly.Module) { var n = WebAssembly.Module.customSections(e, o); 0 === n.length && (o = "dylink", n = WebAssembly.Module.customSections(e, o)), a(0 === n.length, "need dylink section"), _ = (e = new Uint8Array(n[0])).length; } else { a(!(1836278016 == new Uint32Array(new Uint8Array(e.subarray(0, 24)).buffer)[0]), "need to see wasm magic number"), a(0 !== e[8], "need the dylink section to be first"), t = 9; var l = s(); _ = t + l, o = r(); } var d = { neededDynlibs: [], tlsExports: new Set, weakImports: new Set }; if ("dylink" == o) { d.memorySize = s(), d.memoryAlign = s(), d.tableSize = s(), d.tableAlign = s(); for(var u = s(), m = 0; m < u; ++m){ var c = r(); d.neededDynlibs.push(c); } } else { a("dylink.0" !== o); for(; t < _;){ var w = e[t++], p = s(); if (1 === w) d.memorySize = s(), d.memoryAlign = s(), d.tableSize = s(), d.tableAlign = s(); else if (2 === w) for(u = s(), m = 0; m < u; ++m)c = r(), d.neededDynlibs.push(c); else if (3 === w) for(var h = s(); h--;){ var g = r(); 256 & s() && d.tlsExports.add(g); } else if (4 === w) for(h = s(); h--;){ r(), g = r(); 1 == (3 & s()) && d.weakImports.add(g); } else t += p; } } return d; }; function getValue(e, t = "i8") { switch(t.endsWith("*") && (t = "*"), t){ case "i1": case "i8": return HEAP8[e]; case "i16": return HEAP16[e >> 1]; case "i32": return HEAP32[e >> 2]; case "i64": abort("to do getValue(i64) use WASM_BIGINT"); case "float": return HEAPF32[e >> 2]; case "double": return HEAPF64[e >> 3]; case "*": return HEAPU32[e >> 2]; default: abort(`invalid type for getValue: ${t}`); } } var newDSO = (e, t, _)=>{ var s = { refcount: 1 / 0, name: e, exports: _, global: !0 }; return LDSO.loadedLibsByName[e] = s, null != t && (LDSO.loadedLibsByHandle[t] = s), s; }, LDSO = { loadedLibsByName: {}, loadedLibsByHandle: {}, init () { newDSO("__main__", 0, wasmImports); } }, ___heap_base = 78096, zeroMemory = (e, t)=>(HEAPU8.fill(0, e, e + t), e), alignMemory = (e, t)=>Math.ceil(e / t) * t, getMemory = (e)=>{ if (runtimeInitialized) return zeroMemory(_malloc(e), e); var t = ___heap_base, _ = t + alignMemory(e, 16); return ___heap_base = _, GOT.__heap_base.value = _, t; }, 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, t)=>{ e < 128 ? t.push(e) : t.push(e % 128 | 128, e >> 7); }, sigToWasmTypes = (e)=>{ for(var t = { i: "i32", j: "i64", f: "f32", d: "f64", e: "externref", p: "i32" }, _ = { parameters: [], results: "v" == e[0] ? [] : [ t[e[0]] ] }, s = 1; s < e.length; ++s)_.parameters.push(t[e[s]]); return _; }, generateFuncType = (e, t)=>{ var _ = e.slice(0, 1), s = e.slice(1), r = { i: 127, p: 127, j: 126, f: 125, d: 124, e: 111 }; t.push(96), uleb128Encode(s.length, t); for(var a = 0; a < s.length; ++a)t.push(r[s[a]]); "v" == _ ? t.push(0) : t.push(1, r[_]); }, convertJsFunctionToWasm = (e, t)=>{ if ("function" == typeof WebAssembly.Function) return new WebAssembly.Function(sigToWasmTypes(t), e); var _ = [ 1 ]; generateFuncType(t, _); var s = [ 0, 97, 115, 109, 1, 0, 0, 0, 1 ]; uleb128Encode(_.length, s), s.push(..._), s.push(2, 7, 1, 1, 101, 1, 102, 0, 0, 7, 5, 1, 1, 102, 0, 0); var r = new WebAssembly.Module(new Uint8Array(s)); return new WebAssembly.Instance(r, { e: { f: e } }).exports.f; }, wasmTableMirror = [], wasmTable = new WebAssembly.Table({ initial: 27, element: "anyfunc" }), getWasmTableEntry = (e)=>{ var t = wasmTableMirror[e]; return t || (e >= wasmTableMirror.length && (wasmTableMirror.length = e + 1), wasmTableMirror[e] = t = wasmTable.get(e)), t; }, updateTableMap = (e, t)=>{ if (functionsInTableMap) for(var _ = e; _ < e + t; _++){ var s = getWasmTableEntry(_); s && functionsInTableMap.set(s, _); } }, functionsInTableMap, getFunctionAddress = (e)=>(functionsInTableMap || (functionsInTableMap = new WeakMap, updateTableMap(0, wasmTable.length)), functionsInTableMap.get(e) || 0), freeTableIndexes = [], getEmptyTableSlot = ()=>{ if (freeTableIndexes.length) return freeTableIndexes.pop(); try { wasmTable.grow(1); } catch (e) { if (!(e instanceof RangeError)) throw e; throw "Unable to grow wasm table. Set ALLOW_TABLE_GROWTH."; } return wasmTable.length - 1; }, setWasmTableEntry = (e, t)=>{ wasmTable.set(e, t), wasmTableMirror[e] = wasmTable.get(e); }, addFunction = (e, t)=>{ var _ = getFunctionAddress(e); if (_) return _; var s = getEmptyTableSlot(); try { setWasmTableEntry(s, e); } catch (_) { if (!(_ instanceof TypeError)) throw _; var r = convertJsFunctionToWasm(e, t); setWasmTableEntry(s, r); } return functionsInTableMap.set(e, s), s; }, updateGOT = (e, t)=>{ for(var _ in e)if (!isInternalSym(_)) { var s = e[_]; _.startsWith("orig$") && (_ = _.split("$")[1], t = !0), GOT[_] ||= new WebAssembly.Global({ value: "i32", mutable: !0 }), (t || 0 == GOT[_].value) && ("function" == typeof s ? GOT[_].value = addFunction(s) : "number" == typeof s ? GOT[_].value = s : err(`unhandled export type for '${_}': ${typeof s}`)); } }, relocateExports = (e, t, _)=>{ var s = {}; for(var r in e){ var a = e[r]; "object" == typeof a && (a = a.value), "number" == typeof a && (a += t), s[r] = a; } return updateGOT(s, _), s; }, isSymbolDefined = (e)=>{ var t = wasmImports[e]; return !(!t || t.stub); }, dynCallLegacy = (e, t, _)=>(0, Module["dynCall_" + e])(t, ..._), dynCall = (e, t, _ = [])=>e.includes("j") ? dynCallLegacy(e, t, _) : getWasmTableEntry(t)(..._), createInvokeFunction = (e)=>function() { var t = stackSave(); try { return dynCall(e, arguments[0], Array.prototype.slice.call(arguments, 1)); } catch (e) { if (stackRestore(t), e !== e + 0) throw e; _setThrew(1, 0); } }, resolveGlobalSymbol = (e, t = !1)=>{ var _; return t && "orig$" + e in wasmImports && (e = "orig$" + e), isSymbolDefined(e) ? _ = wasmImports[e] : e.startsWith("invoke_") && (_ = wasmImports[e] = createInvokeFunction(e.split("_")[1])), { sym: _, name: e }; }, UTF8ToString = (e, t)=>e ? UTF8ArrayToString(HEAPU8, e, t) : "", loadWebAssemblyModule = (binary, flags, libName, localScope, handle)=>{ var metadata = getDylinkMetadata(binary); function loadModule() { var firstLoad = !handle || !HEAP8[handle + 8]; if (firstLoad) { var memAlign = Math.pow(2, metadata.memoryAlign), memoryBase = metadata.memorySize ? alignMemory(getMemory(metadata.memorySize + memAlign), memAlign) : 0, tableBase = metadata.tableSize ? wasmTable.length : 0; 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); } else memoryBase = HEAPU32[handle + 12 >> 2], tableBase = HEAPU32[handle + 20 >> 2]; var tableGrowthNeeded = tableBase + metadata.tableSize - wasmTable.length, moduleExports; function resolveSymbol(e) { var t = resolveGlobalSymbol(e).sym; return !t && localScope && (t = localScope[e]), t || (t = moduleExports[e]), t; } tableGrowthNeeded > 0 && wasmTable.grow(tableGrowthNeeded); var proxyHandler = { get (e, t) { switch(t){ case "__memory_base": return memoryBase; case "__table_base": return tableBase; } if (t in wasmImports && !wasmImports[t].stub) return wasmImports[t]; var _; t in e || (e[t] = (...e)=>(_ ||= resolveSymbol(t), _(...e))); return e[t]; } }, proxy = new Proxy({}, proxyHandler), info = { "GOT.mem": new Proxy({}, GOTHandler), "GOT.func": new Proxy({}, GOTHandler), env: proxy, wasi_snapshot_preview1: proxy }; function postInstantiation(module1, instance) { function addEmAsm(addr, body) { for(var args = [], arity = 0; arity < 16 && -1 != body.indexOf("$" + arity); arity++)args.push("$" + arity); args = args.join(","); var func = `(${args}) => { ${body} };`; ASM_CONSTS[start] = eval(func); } if (updateTableMap(tableBase, metadata.tableSize), moduleExports = relocateExports(instance.exports, memoryBase), flags.allowUndefined || reportUndefinedSymbols(), "__start_em_asm" in moduleExports) for(var start = moduleExports.__start_em_asm, stop = moduleExports.__stop_em_asm; start < stop;){ var jsString = UTF8ToString(start); addEmAsm(start, jsString), start = HEAPU8.indexOf(0, start) + 1; } function addEmJs(name, cSig, body) { var jsArgs = []; if (cSig = cSig.slice(1, -1), "void" != cSig) for(var i in cSig = cSig.split(","), cSig){ var jsArg = cSig[i].split(" ").pop(); jsArgs.push(jsArg.replace("*", "")); } var func = `(${jsArgs}) => ${body};`; moduleExports[name] = eval(func); } for(var name in moduleExports)if (name.startsWith("__em_js__")) { var start = moduleExports[name], jsString = UTF8ToString(start), parts = jsString.split("<::>"); addEmJs(name.replace("__em_js__", ""), parts[0], parts[1]), delete moduleExports[name]; } var applyRelocs = moduleExports.__wasm_apply_data_relocs; applyRelocs && (runtimeInitialized ? applyRelocs() : __RELOC_FUNCS__.push(applyRelocs)); var init = moduleExports.__wasm_call_ctors; return init && (runtimeInitialized ? init() : __ATINIT__.push(init)), moduleExports; } if (flags.loadAsync) { if (binary instanceof WebAssembly.Module) { var instance = new WebAssembly.Instance(binary, info); return Promise.resolve(postInstantiation(binary, instance)); } return WebAssembly.instantiate(binary, info).then((e)=>postInstantiation(e.module, e.instance)); } var module1 = binary instanceof WebAssembly.Module ? binary : new WebAssembly.Module(binary), instance = new WebAssembly.Instance(module1, info); return postInstantiation(module1, instance); } return currentModuleWeakSymbols = metadata.weakImports, flags.loadAsync ? metadata.neededDynlibs.reduce((e, t)=>e.then(()=>loadDynamicLibrary(t, flags)), Promise.resolve()).then(loadModule) : (metadata.neededDynlibs.forEach((e)=>loadDynamicLibrary(e, flags, localScope)), loadModule()); }, mergeLibSymbols = (e, t)=>{ for (var [_, s] of Object.entries(e)){ const e = (e)=>{ isSymbolDefined(e) || (wasmImports[e] = s); }; e(_); const t = "__main_argc_argv"; "main" == _ && e(t), _ == t && e("main"), _.startsWith("dynCall_") && !Module.hasOwnProperty(_) && (Module[_] = s); } }, asyncLoad = (e, t, _, s)=>{ var r = s ? "" : getUniqueRunDependency(`al ${e}`); readAsync(e, (e)=>{ t(new Uint8Array(e)), r && removeRunDependency(r); }, (t)=>{ if (!_) throw `Loading data file "${e}" failed.`; _(); }), r && addRunDependency(r); }; function loadDynamicLibrary(e, t = { global: !0, nodelete: !0 }, _, s) { var r = LDSO.loadedLibsByName[e]; if (r) return t.global ? r.global || (r.global = !0, mergeLibSymbols(r.exports, e)) : _ && Object.assign(_, r.exports), t.nodelete && r.refcount !== 1 / 0 && (r.refcount = 1 / 0), r.refcount++, s && (LDSO.loadedLibsByHandle[s] = r), !t.loadAsync || Promise.resolve(!0); function a() { if (s) { var _ = HEAPU32[s + 28 >> 2], r = HEAPU32[s + 32 >> 2]; if (_ && r) { var a = HEAP8.slice(_, _ + r); return t.loadAsync ? Promise.resolve(a) : a; } } var o = locateFile(e); if (t.loadAsync) return new Promise(function(e, t) { asyncLoad(o, e, t); }); if (!readBinary) throw new Error(`${o}: file not found, and synchronous loading of external files is not available`); return readBinary(o); } function o() { return t.loadAsync ? a().then((r)=>loadWebAssemblyModule(r, t, e, _, s)) : loadWebAssemblyModule(a(), t, e, _, s); } function n(t) { r.global ? mergeLibSymbols(t, e) : _ && Object.assign(_, t), r.exports = t; } return (r = newDSO(e, s, "loading")).refcount = t.nodelete ? 1 / 0 : 1, r.global = t.global, t.loadAsync ? o().then((e)=>(n(e), !0)) : (n(o()), !0); } var reportUndefinedSymbols = ()=>{ for (var [e, t] of Object.entries(GOT))if (0 == t.value) { var _ = resolveGlobalSymbol(e, !0).sym; if (!_ && !t.required) continue; if ("function" == typeof _) t.value = addFunction(_, _.sig); else { if ("number" != typeof _) throw new Error(`bad export type for '${e}': ${typeof _}`); t.value = _; } } }, loadDylibs = ()=>{ dynamicLibraries.length ? (addRunDependency("loadDylibs"), dynamicLibraries.reduce((e, t)=>e.then(()=>loadDynamicLibrary(t, { loadAsync: !0, global: !0, nodelete: !0, allowUndefined: !0 })), Promise.resolve()).then(()=>{ reportUndefinedSymbols(), removeRunDependency("loadDylibs"); })) : reportUndefinedSymbols(); }, noExitRuntime = Module.noExitRuntime || !0; function setValue(e, t, _ = "i8") { switch(_.endsWith("*") && (_ = "*"), _){ case "i1": case "i8": HEAP8[e] = t; break; case "i16": HEAP16[e >> 1] = t; break; case "i32": HEAP32[e >> 2] = t; break; case "i64": abort("to do setValue(i64) use WASM_BIGINT"); case "float": HEAPF32[e >> 2] = t; break; case "double": HEAPF64[e >> 3] = t; break; case "*": HEAPU32[e >> 2] = t; break; default: abort(`invalid type for setValue: ${_}`); } } var ___memory_base = new WebAssembly.Global({ value: "i32", mutable: !1 }, 1024), ___stack_pointer = new WebAssembly.Global({ value: "i32", mutable: !0 }, 78096), ___table_base = new WebAssembly.Global({ value: "i32", mutable: !1 }, 1), nowIsMonotonic = 1, __emscripten_get_now_is_monotonic = ()=>nowIsMonotonic; __emscripten_get_now_is_monotonic.sig = "i"; var _abort = ()=>{ abort(""); }; _abort.sig = "v"; var _emscripten_date_now = ()=>Date.now(), _emscripten_get_now; _emscripten_date_now.sig = "d", _emscripten_get_now = ()=>performance.now(), _emscripten_get_now.sig = "d"; var _emscripten_memcpy_js = (e, t, _)=>HEAPU8.copyWithin(e, t, t + _); _emscripten_memcpy_js.sig = "vppp"; var getHeapMax = ()=>2147483648, growMemory = (e)=>{ var t = (e - wasmMemory.buffer.byteLength + 65535) / 65536; try { return wasmMemory.grow(t), updateMemoryViews(), 1; } catch (e) {} }, _emscripten_resize_heap = (e)=>{ var t = HEAPU8.length; e >>>= 0; var _ = getHeapMax(); if (e > _) return !1; for(var s, r, a = 1; a <= 4; a *= 2){ var o = t * (1 + .2 / a); o = Math.min(o, e + 100663296); var n = Math.min(_, (s = Math.max(e, o)) + ((r = 65536) - s % r) % r); if (growMemory(n)) return !0; } return !1; }; _emscripten_resize_heap.sig = "ip"; var _fd_close = (e)=>52; _fd_close.sig = "ii"; var convertI32PairToI53Checked = (e, t)=>t + 2097152 >>> 0 < 4194305 - !!e ? (e >>> 0) + 4294967296 * t : NaN; function _fd_seek(e, t, _, s, r) { convertI32PairToI53Checked(t, _); return 70; } _fd_seek.sig = "iiiiip"; var printCharBuffers = [ null, [], [] ], printChar = (e, t)=>{ var _ = printCharBuffers[e]; 0 === t || 10 === t ? ((1 === e ? out : err)(UTF8ArrayToString(_, 0)), _.length = 0) : _.push(t); }, SYSCALLS = { varargs: void 0, get () { var e = HEAP32[+SYSCALLS.varargs >> 2]; return SYSCALLS.varargs += 4, e; }, getp: ()=>SYSCALLS.get(), getStr: (e)=>UTF8ToString(e) }, _fd_write = (e, t, _, s)=>{ for(var r = 0, a = 0; a < _; a++){ var o = HEAPU32[t >> 2], n = HEAPU32[t + 4 >> 2]; t += 8; for(var l = 0; l < n; l++)printChar(e, HEAPU8[o + l]); r += n; } return HEAPU32[s >> 2] = r, 0; }; function _tree_sitter_log_callback(e, t) { if (currentLogCallback) { const _ = UTF8ToString(t); currentLogCallback(_, 0 !== e); } } function _tree_sitter_parse_callback(e, t, _, s, r) { const a = currentParseCallback(t, { row: _, column: s }); "string" == typeof a ? (setValue(r, a.length, "i32"), stringToUTF16(a, e, 10240)) : setValue(r, 0, "i32"); } _fd_write.sig = "iippp"; var runtimeKeepaliveCounter = 0, keepRuntimeAlive = ()=>noExitRuntime || runtimeKeepaliveCounter > 0, _proc_exit = (e)=>{ EXITSTATUS = e, keepRuntimeAlive() || (Module.onExit?.(e), ABORT = !0), quit_(e, new ExitStatus(e)); }; _proc_exit.sig = "vi"; var exitJS = (e, t)=>{ EXITSTATUS = e, _proc_exit(e); }, handleException = (e)=>{ if (e instanceof ExitStatus || "unwind" == e) return EXITSTATUS; quit_(1, e); }, lengthBytesUTF8 = (e)=>{ for(var t = 0, _ = 0; _ < e.length; ++_){ var s = e.charCodeAt(_); s <= 127 ? t++ : s <= 2047 ? t += 2 : s >= 55296 && s <= 57343 ? (t += 4, ++_) : t += 3; } return t; }, stringToUTF8Array = (e, t, _, s)=>{ if (!(s > 0)) return 0; for(var r = _, a = _ + s - 1, o = 0; o < e.length; ++o){ var n = e.charCodeAt(o); if (n >= 55296 && n <= 57343) n = 65536 + ((1023 & n) << 10) | 1023 & e.charCodeAt(++o); if (n <= 127) { if (_ >= a) break; t[_++] = n; } else if (n <= 2047) { if (_ + 1 >= a) break; t[_++] = 192 | n >> 6, t[_++] = 128 | 63 & n; } else if (n <= 65535) { if (_ + 2 >= a) break; t[_++] = 224 | n >> 12, t[_++] = 128 | n >> 6 & 63, t[_++] = 128 | 63 & n; } else { if (_ + 3 >= a) break; t[_++] = 240 | n >> 18, t[_++] = 128 | n >> 12 & 63, t[_++] = 128 | n >> 6 & 63, t[_++] = 128 | 63 & n; } } return t[_] = 0, _ - r; }, stringToUTF8 = (e, t, _)=>stringToUTF8Array(e, HEAPU8, t, _), stringToUTF8OnStack = (e)=>{ var t = lengthBytesUTF8(e) + 1, _ = stackAlloc(t); return stringToUTF8(e, _, t), _; }, stringToUTF16 = (e, t, _)=>{ if (_ ??= 2147483647, _ < 2) return 0; for(var s = t, r = (_ -= 2) < 2 * e.length ? _ / 2 : e.length, a = 0; a < r; ++a){ var o = e.charCodeAt(a); HEAP16[t >> 1] = o, t += 2; } return HEAP16[t >> 1] = 0, t - s; }, AsciiToString = (e)=>{ for(var t = "";;){ var _ = HEAPU8[e++]; if (!_) return t; t += String.fromCharCode(_); } }, wasmImports = { __heap_base: ___heap_base, __indirect_function_table: wasmTable, __memory_base: ___memory_base, __stack_pointer: ___stack_pointer, __table_base: ___table_base, _emscripten_get_now_is_monotonic: __emscripten_get_now_is_monotonic, abort: _abort, emscripten_get_now: _emscripten_get_now, emscripten_memcpy_js: _emscripten_memcpy_js, emscripten_resize_heap: _emscripten_resize_heap, fd_close: _fd_close, fd_seek: _fd_seek, fd_write: _fd_write, memory: wasmMemory, tree_sitter_log_callback: _tree_sitter_log_callback, tree_sitter_parse_callback: _tree_sitter_parse_callback }, wasmExports = createWasm(), ___wasm_call_ctors = ()=>(___wasm_call_ctors = wasmExports.__wasm_call_ctors)(), ___wasm_apply_data_relocs = ()=>(___wasm_apply_data_relocs = wasmExports.__wasm_apply_data_relocs)(), _malloc = Module._malloc = (e)=>(_malloc = Module._malloc = wasmExports.malloc)(e), _calloc = Module._calloc = (e, t)=>(_calloc = Module._calloc = wasmExports.calloc)(e, t), _realloc = Module._realloc = (e, t)=>(_realloc = Module._realloc = wasmExports.realloc)(e, t), _free = Module._free = (e)=>(_free = Module._free = wasmExports.free)(e), _ts_language_symbol_count = Module._ts_language_symbol_count = (e)=>(_ts_language_symbol_count = Module._ts_language_symbol_count = wasmExports.ts_language_symbol_count)(e), _ts_language_state_count = Module._ts_language_state_count = (e)=>(_ts_language_state_count = Module._ts_language_state_count = wasmExports.ts_language_state_count)(e), _ts_language_version = Module._ts_language_version = (e)=>(_ts_language_version = Module._ts_language_version = wasmExports.ts_language_version)(e), _ts_language_field_count = Module._ts_language_field_count = (e)=>(_ts_language_field_count = Module._ts_language_field_count = wasmExports.ts_language_field_count)(e), _ts_language_next_state = Module._ts_language_next_state = (e, t, _)=>(_ts_language_next_state = Module._ts_language_next_state = wasmExports.ts_language_next_state)(e, t, _), _ts_language_symbol_name = Module._ts_language_symbol_name = (e, t)=>(_ts_language_symbol_name = Module._ts_language_symbol_name = wasmExports.ts_language_symbol_name)(e, t), _ts_language_symbol_for_name = Module._ts_language_symbol_for_name = (e, t, _, s)=>(_ts_language_symbol_for_name = Module._ts_language_symbol_for_name = wasmExports.ts_language_symbol_for_name)(e, t, _, s), _strncmp = Module._strncmp = (e, t, _)=>(_strncmp = Module._strncmp = wasmExports.strncmp)(e, t, _), _ts_language_symbol_type = Module._ts_language_symbol_type = (e, t)=>(_ts_language_symbol_type = Module._ts_language_symbol_type = wasmExports.ts_language_symbol_type)(e, t), _ts_language_field_name_for_id = Module._ts_language_field_name_for_id = (e, t)=>(_ts_language_field_name_for_id = Module._ts_language_field_name_for_id = wasmExports.ts_language_field_name_for_id)(e, t), _ts_lookahead_iterator_new = Module._ts_lookahead_iterator_new = (e, t)=>(_ts_lookahead_iterator_new = Module._ts_lookahead_iterator_new = wasmExports.ts_lookahead_iterator_new)(e, t), _ts_lookahead_iterator_delete = Module._ts_lookahead_iterator_delete = (e)=>(_ts_lookahead_iterator_delete = Module._ts_lookahead_iterator_delete = wasmExports.ts_lookahead_iterator_delete)(e), _ts_lookahead_iterator_reset_state = Module._ts_lookahead_iterator_reset_state = (e, t)=>(_ts_lookahead_iterator_reset_state = Module._ts_lookahead_iterator_reset_state = wasmExports.ts_lookahead_iterator_reset_state)(e, t), _ts_lookahead_iterator_reset = Module._ts_lookahead_iterator_reset = (e, t, _)=>(_ts_lookahead_iterator_reset = Module._ts_lookahead_iterator_reset = wasmExports.ts_lookahead_iterator_reset)(e, t, _), _ts_lookahead_iterator_next = Module._ts_lookahead_iterator_next = (e)=>(_ts_lookahead_iterator_next = Module._ts_lookahead_iterator_next = wasmExports.ts_lookahead_iterator_next)(e), _ts_lookahead_iterator_current_symbol = Module._ts_lookahead_iterator_current_symbol = (e)=>(_ts_lookahead_iterator_current_symbol = Module._ts_lookahead_iterator_current_symbol = wasmExports.ts_lookahead_iterator_current_symbol)(e), _memset = Module._memset = (e, t, _)=>(_memset = Module._memset = wasmExports.memset)(e, t, _), _memcpy = Module._memcpy = (e, t, _)=>(_memcpy = Module._memcpy = wasmExports.memcpy)(e, t, _), _ts_parser_delete = Module._ts_parser_delete = (e)=>(_ts_parser_delete = Module._ts_parser_delete = wasmExports.ts_parser_delete)(e), _ts_parser_reset = Module._ts_parser_reset = (e)=>(_ts_parser_reset = Module._ts_parser_reset = wasmExports.ts_parser_reset)(e), _ts_parser_set_language = Module._ts_parser_set_language = (e, t)=>(_ts_parser_set_language = Module._ts_parser_set_language = wasmExports.ts_parser_set_language)(e, t), _ts_parser_timeout_micros = Module._ts_parser_timeout_micros = (e)=>(_ts_parser_timeout_micros = Module._ts_parser_timeout_micros = wasmExports.ts_parser_timeout_micros)(e), _ts_parser_set_timeout_micros = Module._ts_parser_set_timeout_micros = (e, t, _)=>(_ts_parser_set_timeout_micros = Module._ts_parser_set_timeout_micros = wasmExports.ts_parser_set_timeout_micros)(e, t, _), _ts_parser_set_included_ranges = Module._ts_parser_set_included_ranges = (e, t, _)=>(_ts_parser_set_included_ranges = Module._ts_parser_set_included_ranges = wasmExports.ts_parser_set_included_ranges)(e, t, _), _memmove = Module._memmove = (e, t, _)=>(_memmove = Module._memmove = wasmExports.memmove)(e, t, _), _memcmp = Module._memcmp = (e, t, _)=>(_memcmp = Module._memcmp = wasmExports.memcmp)(e, t, _), _ts_query_new = Module._ts_query_new = (e, t, _, s, r)=>(_ts_query_new = Module._ts_query_new = wasmExports.ts_query_new)(e, t, _, s, r), _ts_query_delete = Module._ts_query_delete = (e)=>(_ts_query_delete = Module._ts_query_delete = wasmExports.ts_query_delete)(e), _iswspace = Module._iswspace = (e)=>(_iswspace = Module._iswspace = wasmExports.iswspace)(e), _iswalnum = Module._iswalnum = (e)=>(_iswalnum = Module._iswalnum = wasmExports.iswalnum)(e), _ts_query_pattern_count = Module._ts_query_pattern_count = (e)=>(_ts_query_pattern_count = Module._ts_query_pattern_count = wasmExports.ts_query_pattern_count)(e), _ts