From 415d60d228109fb1f9006f6c12caeabe8d364bcf Mon Sep 17 00:00:00 2001 From: Arthur Lu Date: Mon, 6 Jul 2026 18:51:24 +0000 Subject: [PATCH] update wfa --- web/modules/wfa.js | 2 +- web/modules/wfa.wasm | Bin 38883 -> 41264 bytes 2 files changed, 1 insertion(+), 1 deletion(-) diff --git a/web/modules/wfa.js b/web/modules/wfa.js index 282f463..7a35cc3 100644 --- a/web/modules/wfa.js +++ b/web/modules/wfa.js @@ -1,2 +1,2 @@ (()=>{if(typeof global!="undefined");else if(typeof window!="undefined")window.global=window;else if(typeof self!="undefined")self.global=self;else throw new Error("cannot export Go (neither global, window nor self is defined)");!global.require&&typeof require!="undefined"&&(global.require=require),!global.fs&&global.require&&(global.fs=require("node:fs"));const e=()=>{const e=new Error("not implemented");return e.code="ENOSYS",e};if(!global.fs){let t="";global.fs={constants:{O_WRONLY:-1,O_RDWR:-1,O_CREAT:-1,O_TRUNC:-1,O_APPEND:-1,O_EXCL:-1},writeSync(e,n){t+=s.decode(n);const o=t.lastIndexOf(` -`);return o!=-1&&(console.log(t.substr(0,o)),t=t.substr(o+1)),n.length},write(t,n,s,o,i,a){if(s!==0||o!==n.length||i!==null){a(e());return}const r=this.writeSync(t,n);a(null,r)},chmod(t,n,s){s(e())},chown(t,n,s,o){o(e())},close(t,n){n(e())},fchmod(t,n,s){s(e())},fchown(t,n,s,o){o(e())},fstat(t,n){n(e())},fsync(e,t){t(null)},ftruncate(t,n,s){s(e())},lchown(t,n,s,o){o(e())},link(t,n,s){s(e())},lstat(t,n){n(e())},mkdir(t,n,s){s(e())},open(t,n,s,o){o(e())},read(t,n,s,o,i,a){a(e())},readdir(t,n){n(e())},readlink(t,n){n(e())},rename(t,n,s){s(e())},rmdir(t,n){n(e())},stat(t,n){n(e())},symlink(t,n,s){s(e())},truncate(t,n,s){s(e())},unlink(t,n){n(e())},utimes(t,n,s,o){o(e())}}}if(global.process||(global.process={getuid(){return-1},getgid(){return-1},geteuid(){return-1},getegid(){return-1},getgroups(){throw e()},pid:-1,ppid:-1,umask(){throw e()},cwd(){throw e()},chdir(){throw e()}}),!global.crypto){const e=require("node:crypto");global.crypto={getRandomValues(t){e.randomFillSync(t)}}}global.performance||(global.performance={now(){const[e,t]=process.hrtime();return e*1e3+t/1e6}}),global.TextEncoder||(global.TextEncoder=require("node:util").TextEncoder),global.TextDecoder||(global.TextDecoder=require("node:util").TextDecoder);const i=new TextEncoder("utf-8"),s=new TextDecoder("utf-8");let t=new DataView(new ArrayBuffer(8));var o=[];const n={};if(global.Go=class{constructor(){this._callbackTimeouts=new Map,this._nextCallbackTimeoutID=1;const e=()=>new DataView(this._inst.exports.memory.buffer),a=e=>{t.setBigInt64(0,e,!0);const n=t.getFloat64(0,!0);if(n===0)return void 0;if(!isNaN(n))return n;const s=e&4294967295n;return this._values[s]},h=t=>{let n=e().getBigUint64(t,!0);return a(n)},l=e=>{const s=2146959360n;if(typeof e=="number")return isNaN(e)?s<<32n:e===0?s<<32n|1n:(t.setFloat64(0,e,!0),t.getBigInt64(0,!0));switch(e){case void 0:return 0n;case null:return s<<32n|2n;case!0:return s<<32n|3n;case!1:return s<<32n|4n}let n=this._ids.get(e);n===void 0&&(n=this._idPool.pop(),n===void 0&&(n=BigInt(this._values.length)),this._values[n]=e,this._goRefCounts[n]=0,this._ids.set(e,n)),this._goRefCounts[n]++;let o=1n;switch(typeof e){case"string":o=2n;break;case"symbol":o=3n;break;case"function":o=4n;break}return n|(s|o)<<32n},r=(t,n)=>{let s=l(n);e().setBigUint64(t,s,!0)},d=(e,t)=>new Uint8Array(this._inst.exports.memory.buffer,e,t),u=(e,t)=>{const s=new Array(t);for(let n=0;ns.decode(new DataView(this._inst.exports.memory.buffer,e,t)),m=Date.now()-performance.now();this.importObject={wasi_snapshot_preview1:{fd_write:function(t,n,i,a){let r=0;if(t==1)for(let t=0;t0,fd_fdstat_get:()=>0,fd_seek:()=>0,proc_exit:e=>{throw this.exited=!0,this.exitCode=e,this._resolveExitPromise(),n},random_get:(e,t)=>(crypto.getRandomValues(d(e,t)),0)},gojs:{"runtime.ticks":()=>BigInt((m+performance.now())*1e6),"runtime.sleepTicks":e=>{setTimeout(()=>{if(this.exited)return;try{this._inst.exports.go_scheduler()}catch(e){if(e!==n)throw e}},Number(e)/1e6)},"syscall/js.finalizeRef":e=>{const t=e&4294967295n;if(this._goRefCounts?.[t]!==void 0){if(this._goRefCounts[t]--,this._goRefCounts[t]===0){const e=this._values[t];this._values[t]=null,this._ids.delete(e),this._idPool.push(t)}}else console.error("syscall/js.finalizeRef: unknown id",t)},"syscall/js.stringVal":(e,t)=>{e>>>=0;const n=c(e,t);return l(n)},"syscall/js.valueGet":(e,t,n)=>{let s=c(t,n),o=a(e),i=Reflect.get(o,s);return l(i)},"syscall/js.valueSet":(e,t,n,s)=>{const o=a(e),i=c(t,n),r=a(s);Reflect.set(o,i,r)},"syscall/js.valueDelete":(e,t,n)=>{const s=a(e),o=c(t,n);Reflect.deleteProperty(s,o)},"syscall/js.valueIndex":(e,t)=>l(Reflect.get(a(e),t)),"syscall/js.valueSetIndex":(e,t,n)=>{Reflect.set(a(e),t,a(n))},"syscall/js.valueCall":(t,n,s,o,i,l,d)=>{const h=a(n),m=c(s,o),f=u(i,l,d);try{const n=Reflect.get(h,m);r(t,Reflect.apply(n,h,f)),e().setUint8(t+8,1)}catch(n){r(t,n),e().setUint8(t+8,0)}},"syscall/js.valueInvoke":(t,n,s,o,i)=>{try{const c=a(n),l=u(s,o,i);r(t,Reflect.apply(c,void 0,l)),e().setUint8(t+8,1)}catch(n){r(t,n),e().setUint8(t+8,0)}},"syscall/js.valueNew":(t,n,s,o,i)=>{const c=a(n),l=u(s,o,i);try{r(t,Reflect.construct(c,l)),e().setUint8(t+8,1)}catch(n){r(t,n),e().setUint8(t+8,0)}},"syscall/js.valueLength":e=>a(e).length,"syscall/js.valuePrepareString":(t,n)=>{const o=String(a(n)),s=i.encode(o);r(t,s),e().setInt32(t+8,s.length,!0)},"syscall/js.valueLoadString":(e,t,n,s)=>{const o=a(e);d(t,n,s).set(o)},"syscall/js.valueInstanceOf":(e,t)=>a(e)instanceof a(t),"syscall/js.copyBytesToGo":(t,n,s,o,i)=>{let h=t,c=t+4;const l=d(n,s),r=a(i);if(!(r instanceof Uint8Array||r instanceof Uint8ClampedArray)){e().setUint8(c,0);return}const u=r.subarray(0,l.length);l.set(u),e().setUint32(h,u.length,!0),e().setUint8(c,1)},"syscall/js.copyBytesToJS":(t,n,s,o)=>{let u=t,c=t+4;const r=a(n),h=d(s,o);if(!(r instanceof Uint8Array||r instanceof Uint8ClampedArray)){e().setUint8(c,0);return}const l=h.subarray(0,r.length);r.set(l),e().setUint32(u,l.length,!0),e().setUint8(c,1)}}},this.importObject.env=this.importObject.gojs}async run(e){if(this._inst=e,this._values=[NaN,0,null,!0,!1,global,this],this._goRefCounts=[],this._ids=new Map,this._idPool=[],this.exited=!1,this.exitCode=0,this._inst.exports._start){let e=new Promise((e)=>{this._resolveExitPromise=e});try{this._inst.exports._start()}catch(e){if(e!==n)throw e}return await e,this.exitCode}this._inst.exports._initialize()}_resume(){if(this.exited)throw new Error("Go program has already exited");try{this._inst.exports.resume()}catch(e){if(e!==n)throw e}this.exited&&this._resolveExitPromise()}_makeFuncWrapper(e){const t=this;return function(){const n={id:e,this:this,args:arguments};return t._pendingEvent=n,t._resume(),n.result}}},global.require&&global.require.main===module&&global.process&&global.process.versions&&!global.process.versions.electron){process.argv.length!=3&&(console.error("usage: go_js_wasm_exec [wasm binary] [arguments]"),process.exit(1));const e=new Go;WebAssembly.instantiate(fs.readFileSync(process.argv[2]),e.importObject).then(async t=>{let n=await e.run(t.instance);process.exit(n)}).catch(e=>{console.error(e),process.exit(1)})}})();export default function(e){return new Promise(t=>{const n=new Go,s=e=>{const s=e.instance;global.wfa=s,n.run(s),t()};"instantiateStreaming"in WebAssembly?WebAssembly.instantiateStreaming(fetch(e),n.importObject).then(function(e){s(e)}):fetch(e).then(e=>e.arrayBuffer()).then(e=>WebAssembly.instantiate(e,n.importObject).then(function(e){s(e)}))})} \ No newline at end of file +`);return o!=-1&&(console.log(t.substr(0,o)),t=t.substr(o+1)),n.length},write(t,n,s,o,i,a){if(s!==0||o!==n.length||i!==null){a(e());return}const r=this.writeSync(t,n);a(null,r)},chmod(t,n,s){s(e())},chown(t,n,s,o){o(e())},close(t,n){n(e())},fchmod(t,n,s){s(e())},fchown(t,n,s,o){o(e())},fstat(t,n){n(e())},fsync(e,t){t(null)},ftruncate(t,n,s){s(e())},lchown(t,n,s,o){o(e())},link(t,n,s){s(e())},lstat(t,n){n(e())},mkdir(t,n,s){s(e())},open(t,n,s,o){o(e())},read(t,n,s,o,i,a){a(e())},readdir(t,n){n(e())},readlink(t,n){n(e())},rename(t,n,s){s(e())},rmdir(t,n){n(e())},stat(t,n){n(e())},symlink(t,n,s){s(e())},truncate(t,n,s){s(e())},unlink(t,n){n(e())},utimes(t,n,s,o){o(e())}}}if(global.process||(global.process={getuid(){return-1},getgid(){return-1},geteuid(){return-1},getegid(){return-1},getgroups(){throw e()},pid:-1,ppid:-1,umask(){throw e()},cwd(){throw e()},chdir(){throw e()}}),!global.crypto){const e=require("node:crypto");global.crypto={getRandomValues(t){e.randomFillSync(t)}}}global.performance||(global.performance={now(){const[e,t]=process.hrtime();return e*1e3+t/1e6}}),global.TextEncoder||(global.TextEncoder=require("node:util").TextEncoder),global.TextDecoder||(global.TextDecoder=require("node:util").TextDecoder);const i=new TextEncoder("utf-8"),s=new TextDecoder("utf-8");let t=new DataView(new ArrayBuffer(8));var o=[];const n={};if(global.Go=class{constructor(){this._callbackTimeouts=new Map,this._nextCallbackTimeoutID=1;const e=()=>new DataView(this._inst.exports.memory.buffer),a=e=>{t.setBigInt64(0,e,!0);const n=t.getFloat64(0,!0);if(n===0)return 0[0];if(!isNaN(n))return n;const s=e&4294967295n;return this._values[s]},h=t=>{let n=e().getBigUint64(t,!0);return a(n)},l=e=>{const s=2146959360n;if(typeof e=="number")return isNaN(e)?s<<32n:e===0?s<<32n|1n:(t.setFloat64(0,e,!0),t.getBigInt64(0,!0));switch(e){case 0[0]:return 0n;case null:return s<<32n|2n;case!0:return s<<32n|3n;case!1:return s<<32n|4n}let n=this._ids.get(e);n===0[0]&&(n=this._idPool.pop(),n===0[0]&&(n=BigInt(this._values.length)),this._values[n]=e,this._goRefCounts[n]=0,this._ids.set(e,n)),this._goRefCounts[n]++;let o=1n;switch(typeof e){case"string":o=2n;break;case"symbol":o=3n;break;case"function":o=4n;break}return n|(s|o)<<32n},r=(t,n)=>{let s=l(n);e().setBigUint64(t,s,!0)},d=(e,t)=>new Uint8Array(this._inst.exports.memory.buffer,e,t),u=(e,t)=>{const s=new Array(t);for(let n=0;ns.decode(new DataView(this._inst.exports.memory.buffer,e,t)),m=Date.now()-performance.now();this.importObject={wasi_snapshot_preview1:{fd_write:function(t,n,i,a){let r=0;if(t==1)for(let t=0;t0,fd_fdstat_get:()=>0,fd_seek:()=>0,proc_exit:e=>{throw this.exited=!0,this.exitCode=e,this._resolveExitPromise(),n},random_get:(e,t)=>(crypto.getRandomValues(d(e,t)),0)},gojs:{"runtime.ticks":()=>BigInt((m+performance.now())*1e6),"runtime.sleepTicks":e=>{setTimeout(()=>{if(this.exited)return;try{this._inst.exports.go_scheduler()}catch(e){if(e!==n)throw e}},Number(e)/1e6)},"syscall/js.finalizeRef":e=>{const t=e&4294967295n;if(this._goRefCounts?.[t]!==0[0]){if(this._goRefCounts[t]--,this._goRefCounts[t]===0){const e=this._values[t];this._values[t]=null,this._ids.delete(e),this._idPool.push(t)}}else console.error("syscall/js.finalizeRef: unknown id",t)},"syscall/js.stringVal":(e,t)=>{e>>>=0;const n=c(e,t);return l(n)},"syscall/js.valueGet":(e,t,n)=>{let s=c(t,n),o=a(e),i=Reflect.get(o,s);return l(i)},"syscall/js.valueSet":(e,t,n,s)=>{const o=a(e),i=c(t,n),r=a(s);Reflect.set(o,i,r)},"syscall/js.valueDelete":(e,t,n)=>{const s=a(e),o=c(t,n);Reflect.deleteProperty(s,o)},"syscall/js.valueIndex":(e,t)=>l(Reflect.get(a(e),t)),"syscall/js.valueSetIndex":(e,t,n)=>{Reflect.set(a(e),t,a(n))},"syscall/js.valueCall":(t,n,s,o,i,l,d)=>{const h=a(n),m=c(s,o),f=u(i,l,d);try{const n=Reflect.get(h,m);r(t,Reflect.apply(n,h,f)),e().setUint8(t+8,1)}catch(n){r(t,n),e().setUint8(t+8,0)}},"syscall/js.valueInvoke":(t,n,s,o,i)=>{try{const c=a(n),l=u(s,o,i);r(t,Reflect.apply(c,0[0],l)),e().setUint8(t+8,1)}catch(n){r(t,n),e().setUint8(t+8,0)}},"syscall/js.valueNew":(t,n,s,o,i)=>{const c=a(n),l=u(s,o,i);try{r(t,Reflect.construct(c,l)),e().setUint8(t+8,1)}catch(n){r(t,n),e().setUint8(t+8,0)}},"syscall/js.valueLength":e=>a(e).length,"syscall/js.valuePrepareString":(t,n)=>{const o=String(a(n)),s=i.encode(o);r(t,s),e().setInt32(t+8,s.length,!0)},"syscall/js.valueLoadString":(e,t,n,s)=>{const o=a(e);d(t,n,s).set(o)},"syscall/js.valueInstanceOf":(e,t)=>a(e)instanceof a(t),"syscall/js.copyBytesToGo":(t,n,s,o,i)=>{let h=t,c=t+4;const l=d(n,s),r=a(i);if(!(r instanceof Uint8Array||r instanceof Uint8ClampedArray)){e().setUint8(c,0);return}const u=r.subarray(0,l.length);l.set(u),e().setUint32(h,u.length,!0),e().setUint8(c,1)},"syscall/js.copyBytesToJS":(t,n,s,o)=>{let u=t,c=t+4;const r=a(n),h=d(s,o);if(!(r instanceof Uint8Array||r instanceof Uint8ClampedArray)){e().setUint8(c,0);return}const l=h.subarray(0,r.length);r.set(l),e().setUint32(u,l.length,!0),e().setUint8(c,1)}}},this.importObject.env=this.importObject.gojs}async run(e){if(this._inst=e,this._values=[NaN,0,null,!0,!1,global,this],this._goRefCounts=[],this._ids=new Map,this._idPool=[],this.exited=!1,this.exitCode=0,this._inst.exports._start){let e=new Promise((e)=>{this._resolveExitPromise=e});try{this._inst.exports._start()}catch(e){if(e!==n)throw e}return await e,this.exitCode}this._inst.exports._initialize()}_resume(){if(this.exited)throw new Error("Go program has already exited");try{this._inst.exports.resume()}catch(e){if(e!==n)throw e}this.exited&&this._resolveExitPromise()}_makeFuncWrapper(e){const t=this;return function(){const n={id:e,this:this,args:arguments};return t._pendingEvent=n,t._resume(),n.result}}},global.require&&global.require.main===module&&global.process&&global.process.versions&&!global.process.versions.electron){process.argv.length!=3&&(console.error("usage: go_js_wasm_exec [wasm binary] [arguments]"),process.exit(1));const e=new Go;WebAssembly.instantiate(fs.readFileSync(process.argv[2]),e.importObject).then(async t=>{let n=await e.run(t.instance);process.exit(n)}).catch(e=>{console.error(e),process.exit(1)})}})();export default function(e){return new Promise(t=>{const n=new Go,s=e=>{const s=e.instance;global.wfa=s,n.run(s),t()};"instantiateStreaming"in WebAssembly?WebAssembly.instantiateStreaming(fetch(e),n.importObject).then(function(e){s(e)}):fetch(e).then(e=>e.arrayBuffer()).then(e=>WebAssembly.instantiate(e,n.importObject).then(function(e){s(e)}))})} \ No newline at end of file diff --git a/web/modules/wfa.wasm b/web/modules/wfa.wasm index acf82b3eb056c0254e84dd9496f50d634f87cc1d..86d4df11927cdca2395d325b95f0ecdeaeffc2ac 100644 GIT binary patch delta 14980 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 delta 12754 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 m*Vp`>-c^0?>1*k2UDX)eb7