@huynle/hub 0.8.1 → 0.8.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +113 -0
- package/README.md +1 -1
- package/package.json +1 -1
- package/packages/claude-code/package.json +1 -1
- package/packages/cli/dist/hub-cli.js +87 -52
- package/packages/cli/package.json +1 -1
- package/packages/cli/src/artifact-jobs-mcp.ts +10 -9
- package/packages/cli/src/artifacts-mcp.ts +8 -7
- package/packages/cli/src/mcp.ts +4 -3
- package/packages/cli/src/profiles-mcp.ts +3 -3
- package/packages/cli/src/team-intake-mcp.ts +8 -7
- package/packages/cli/src/teams-mcp.ts +2 -1
- package/packages/cli/src/tool-args.ts +6 -0
- package/packages/cli/src/watchlist.ts +5 -4
- package/packages/codex/package.json +1 -1
- package/packages/node/package.json +1 -1
- package/packages/preset/package.json +1 -1
- package/packages/protocol/package.json +1 -1
- package/packages/protocol/src/concierge.ts +4 -1
- package/packages/protocol/src/embedded-media.ts +59 -0
- package/packages/protocol/src/index.ts +83 -6
- package/packages/protocol/src/wire.ts +1 -0
- package/packages/runtime-openshell/package.json +1 -1
- package/packages/runtime-sdk/package.json +1 -1
- package/packages/sdk/package.json +1 -1
- package/packages/sdk/src/client.ts +3 -1
- package/packages/spoke-sdk/package.json +1 -1
- package/packages/spoke-sdk/src/connection.ts +13 -1
- package/src/central/agent/acting-routes.ts +3 -2
- package/src/central/agent/acting.ts +67 -12
- package/src/central/agent/delivery.ts +12 -3
- package/src/central/agent/escalation.ts +30 -9
- package/src/central/agent/launch-spec.ts +38 -19
- package/src/central/agent/routes.ts +7 -0
- package/src/central/concierge/context.ts +3 -1
- package/src/central/concierge/prompt.ts +7 -4
- package/src/central/http.ts +50 -21
- package/src/central/registry.ts +23 -3
- package/src/central/revert-windows.ts +66 -0
- package/src/central/spoke-ws.ts +6 -3
- package/src/central/teams/staffing.ts +2 -2
- package/src/index.ts +26 -14
- package/src/spoke/deliver.ts +6 -0
- package/src/spoke/fork-revert.ts +94 -9
- package/src/spoke/hub-tool.ts +2 -2
- package/src/spoke/locations.ts +80 -0
- package/src/spoke/profile-apply.ts +24 -14
- package/src/spoke/session-context.ts +76 -6
- package/src/spoke/spoke.ts +116 -36
- package/src/spoke/timeline.ts +30 -3
- package/src/spoke/tracker.ts +17 -1
- package/src/status.ts +2 -1
- package/web/dist/assets/{ArtifactPage-mNzjlP_U.js → ArtifactPage-R0ZTpHca.js} +1 -1
- package/web/dist/assets/{ArtifactPane-CPQcuX7c.js → ArtifactPane-C9KrBna8.js} +1 -1
- package/web/dist/assets/{ArtifactWorkbench-NoFC5Sb2.js → ArtifactWorkbench-sP2mZccC.js} +1 -1
- package/web/dist/assets/{Library-LXHsP5Fw.js → Library-BXbJvTUS.js} +2 -2
- package/web/dist/assets/{ProfilesDestination-DhVVcAep.js → ProfilesDestination-D7XyLTJ7.js} +1 -1
- package/web/dist/assets/{TeamsPage-DBrO5hoL.js → TeamsPage-Dgxt8UI3.js} +1 -1
- package/web/dist/assets/{Watchtower-DxaJYQp_.js → Watchtower-DJHx6cWw.js} +2 -2
- package/web/dist/assets/index-g4V9mfSr.js +34 -0
- package/web/dist/assets/{live-BDq0AABg.js → live-OgQWPrSY.js} +1 -1
- package/web/dist/assets/{renderer2d-DAr4IHM8.js → renderer2d-DjEipyto.js} +1 -1
- package/web/dist/assets/{renderer3d-DWZj595u.js → renderer3d-B648jKGO.js} +1 -1
- package/web/dist/assets/{safe-area-JUb6OeI3.js → safe-area-CNLyboIj.js} +1 -1
- package/web/dist/assets/{silero-worker-C8-8vLVS.js → silero-worker-DhlIHyD_.js} +1 -1
- package/web/dist/index.html +1 -1
- package/web/dist/assets/index-lIOfSYck.js +0 -34
|
@@ -1 +1 @@
|
|
|
1
|
-
import{E as e}from"./live-
|
|
1
|
+
import{E as e}from"./live-OgQWPrSY.js";var t=`watchtower.layout`,n=1e3,r=[`--accent`,`--blue`,`--violet`,`--orange`,`--ok`,`--warn`];function i(e,t=0){let n=110+26*Math.sqrt(Math.max(1,e))+7*Math.sqrt(Math.max(0,t)),r=Math.PI*(3-Math.sqrt(5));return Array.from({length:e},(t,i)=>{let a=e===1?0:1-i/(e-1)*2,o=Math.sqrt(1-a*a),s=i*r;return[l(Math.cos(s)*o*n),l(a*n*.55),l(Math.sin(s)*o*n)]})}function a(t){let n=new Set(t.nodes.map(e=>e.id)),a=i(t.groups.length,t.groups.reduce((e,t)=>e+t.sections.reduce((e,t)=>e+t.members.length,0),0));return t.groups.map((t,i)=>{let o=[];n.has(t.id)&&o.push(t.id);for(let e of t.sections)e.id!==void 0&&n.has(e.id)&&o.push(e.id),o.push(...e.members);let s=t.machine===void 0?r[i%r.length]:e[t.machine%e.length];return{id:t.id,label:t.label,color:s,center:a[i],members:o}})}function o(e){let t=new Map;for(let n of e.links)n.kind!==`structure`&&n.kind!==`policy`&&(t.set(n.source,(t.get(n.source)??0)+n.count),t.set(n.target,(t.get(n.target)??0)+n.count));return t}function s(e,t){let n=new Set,r=new Set(e.groups.map(e=>e.id));for(let t of e.nodes)(t.kind===`hub`||t.kind===`user`||t.kind===`app`||t.kind===`role`||r.has(t.id)||t.match)&&n.add(t.id);let i=o(e),a=e.nodes.filter(e=>!n.has(e.id)&&e.kind!==`role`);a.sort((e,t)=>(i.get(t.id)??0)-(i.get(e.id)??0)||(e.id<t.id?-1:+(e.id>t.id)));for(let e of a.slice(0,Math.max(0,t.max)))n.add(e.id);for(let e of t.extra??[])n.add(e);return n}var c=e=>e.kind===`role`&&e.vacant?`${e.label} · vacant`:e.label,l=e=>Math.round(e*10)/10,u=e=>typeof e==`number`&&Number.isFinite(e);function d(e){let t=new Map;if(!e)return t;let n;try{n=JSON.parse(e)}catch{return t}if(typeof n!=`object`||!n||Array.isArray(n))return t;let{v:r,p:i}=n;if(r!==1||typeof i!=`object`||!i||Array.isArray(i))return t;for(let[e,n]of Object.entries(i)){if(t.size>=1e3)break;if(!Array.isArray(n)||n.length!==3)continue;let[r,i,a]=n;u(r)&&u(i)&&u(a)&&t.set(e,[r,i,a])}return t}function f(e,t,r=n){let i={},a=0;for(let n of[e,t])for(let[e,t]of n){if(a>=r)break;e in i||!t.every(u)||(i[e]=[l(t[0]),l(t[1]),l(t[2])],a++)}return JSON.stringify({v:1,p:i})}function p(e,t){let n=2166136261;for(let t=0;t<e.length;t++)n=Math.imul(n^e.charCodeAt(t),16777619);let r=(n>>>0)%1e3/1e3,i=(Math.imul(n,2654435761)>>>0)%1e3/1e3,a=r*Math.PI*2,o=i*2-1,s=Math.sqrt(1-o*o),c=t*(.6+.4*r);return[Math.cos(a)*s*c,o*c,Math.sin(a)*s*c]}function m(e,t){let n=new Map,r=new Set,i=new Map;for(let t of a(e))for(let e of t.members)i.set(e,t);let o=new Map,s=new Map;for(let t of e.links)t.kind===`structure`&&(o.get(t.target)??o.set(t.target,[]).get(t.target)).push(t.source),(s.get(t.target)??s.set(t.target,[]).get(t.target)).push(t.source),(s.get(t.source)??s.set(t.source,[]).get(t.source)).push(t.target);n.set(`hub`,[0,0,0]);for(let r of e.nodes){if(r.id===`hub`)continue;let e=t.get(r.id);e&&n.set(r.id,e)}let c=new Set(e.groups.map(e=>e.id)),u=[...e.nodes.filter(e=>c.has(e.id)),...e.nodes.filter(e=>!c.has(e.id))];for(let e of u){if(n.has(e.id))continue;r.add(e.id);let t=[...o.get(e.id)??[],...s.get(e.id)??[]].find(e=>e!==`hub`&&n.has(e)),a=i.get(e.id),c=t===void 0?a?.center:n.get(t),u=p(e.id,t===void 0?a?24:40:14),d=c??[0,0,0];n.set(e.id,[l(d[0]+u[0]),l(d[1]+u[1]),l(d[2]+u[2])])}return{positions:n,fresh:r}}function h(e,t){let n=new Map,r=[],i=e=>r.some(t=>e.x<t.x+t.w&&t.x<e.x+e.w&&e.y<t.y+t.h&&t.y<e.y+e.h),a=[...e.filter(e=>e.pinned),...e.filter(e=>!e.pinned)];for(let e of a)for(let a of e.texts){let o=t(a,e),s={x:e.x-o/2,y:e.y,w:o,h:e.h};if(e.pinned||!i(s)){r.push(s),n.set(e.id,{text:a,box:s});break}}return n}var g=8,_=900;function v(e){let t={top:0,right:0,bottom:0,left:0},n=e.closest(`.wt-stage`);if(!n)return t;let r=e.getBoundingClientRect();if(!r.height)return t;let i=n.querySelector(`.wt-dock`)?.getBoundingClientRect(),a=n.querySelector(`.wt-chips`)?.getBoundingClientRect(),o=r.width>=_?n.querySelector(`.wt-pop-legend`)?.getBoundingClientRect():void 0,s=o&&o.width?Math.max(0,o.right-r.left+g):0,c=i&&i.height?Math.max(0,r.bottom-i.top+g):0,l=a&&a.height?Math.max(0,a.bottom-r.top+g):0;return{top:Math.min(l,r.height/3),right:0,bottom:Math.min(c,r.height/3),left:Math.min(s,r.width/3)}}export{c as a,a as c,s as i,m as l,t as n,d as o,o as r,h as s,v as t,f as u};
|
|
@@ -8,4 +8,4 @@ if(typeof n<`u`)return n.apply(this,arguments);throw Error(`Dynamic require of "
|
|
|
8
8
|
`);return e[0]==`Error`&&e.shift(),Et(e),q.Wa=Tt(),q.$a=e,q.Wa}function Dt(e,t,n){if(e>>>=0,t>>>=0,q.Wa==e)var r=q.$a;else(r=Error().stack.toString().split(`
|
|
9
9
|
`))[0]==`Error`&&r.shift(),Et(r);for(var i=3;r[i]&&Tt()!=e;)++i;for(e=0;e<n&&r[e+i];++e)E()[t+4*e>>>2>>>0]=Tt();return e}var Ot,kt={},At=()=>{if(!Ot){var e,t={USER:`web_user`,LOGNAME:`web_user`,PATH:`/`,PWD:`/`,HOME:`/home/web_user`,LANG:(typeof navigator==`object`&&navigator.languages&&navigator.languages[0]||`C`).replace(`-`,`_`)+`.UTF-8`,_:`./this.program`};for(e in kt)kt[e]===void 0?delete t[e]:t[e]=kt[e];var n=[];for(e in t)n.push(`${e}=${t[e]}`);Ot=n}return Ot};function jt(e,t){if(s)return I(19,1,e,t);e>>>=0,t>>>=0;var n,r=0,i=0;for(n of At()){var a=t+r;D()[e+i>>>2>>>0]=a,r+=G(n,a,1/0)+1,i+=4}return 0}var Mt=e=>{for(var t=0,n=0;n<e.length;++n){var r=e.charCodeAt(n);127>=r?t++:2047>=r?t+=2:55296<=r&&57343>=r?(t+=4,++n):t+=3}return t};function Nt(e,t){if(s)return I(20,1,e,t);e>>>=0,t>>>=0;var n=At();for(var r of(D()[e>>>2>>>0]=n.length,e=0,n))e+=Mt(r)+1;return D()[t>>>2>>>0]=e,0}function Pt(e){return s?I(21,1,e):52}function Ft(e,t,n,r){return s?I(22,1,e,t,n,r):52}function It(e,t,n,r){return s?I(23,1,e,t,n,r):70}var Y=[null,[],[]];function X(e,t,n,r){if(s)return I(24,1,e,t,n,r);t>>>=0,n>>>=0,r>>>=0;for(var i=0,a=0;a<n;a++){var o=D()[t>>>2>>>0],c=D()[t+4>>>2>>>0];t+=8;for(var l=0;l<c;l++){var u=e,d=T()[o+l>>>0],f=Y[u];d===0||d===10?((u===1?ae:w)(Fe(f)),f.length=0):f.push(d)}i+=c}return D()[r>>>2>>>0]=i,0}s||function(){for(var e=r.numThreads-1;e--;)z();N.push(()=>{pe++,function(e){s?e():Promise.all(L.map(Te)).then(e)}(()=>me())})}(),s||(h=new WebAssembly.Memory({initial:256,maximum:65536,shared:!0}),A()),r.wasmBinary&&(m=r.wasmBinary),r.stackSave=()=>Yt(),r.stackRestore=e=>qt(e),r.stackAlloc=e=>Jt(e),r.setValue=function(e,t,n=`i8`){switch(n.endsWith(`*`)&&(n=`*`),n){case`i1`:case`i8`:ce()[e>>>0]=t;break;case`i16`:le()[e>>>1>>>0]=t;break;case`i32`:E()[e>>>2>>>0]=t;break;case`i64`:S[e>>>3]=BigInt(t);break;case`float`:O()[e>>>2>>>0]=t;break;case`double`:k()[e>>>3>>>0]=t;break;case`*`:D()[e>>>2>>>0]=t;break;default:M(`invalid type for setValue: ${n}`)}},r.getValue=function(e,t=`i8`){switch(t.endsWith(`*`)&&(t=`*`),t){case`i1`:case`i8`:return ce()[e>>>0];case`i16`:return le()[e>>>1>>>0];case`i32`:return E()[e>>>2>>>0];case`i64`:return S[e>>>3];case`float`:return O()[e>>>2>>>0];case`double`:return k()[e>>>3>>>0];case`*`:return D()[e>>>2>>>0];default:M(`invalid type for getValue: ${t}`)}},r.UTF8ToString=Ie,r.stringToUTF8=G,r.lengthBytesUTF8=Mt;var Lt=[ve,ye,Me,Le,Re,ze,B,Be,Ve,He,Ue,We,Ge,Ke,qe,Je,ct,lt,ft,jt,Nt,Pt,Ft,It,X],Rt={853836:(e,t,n,i,a)=>{if(r===void 0||!r.Sa)return 1;if((e=Ie(Number(e>>>0))).startsWith(`./`)&&(e=e.substring(2)),!(e=r.Sa.get(e)))return 2;if(t=Number(t>>>0),n=Number(n>>>0),i=Number(i>>>0),t+n>e.byteLength)return 3;try{let o=e.subarray(t,t+n);switch(a){case 0:T().set(o,i>>>0);break;case 1:r.hb?r.hb(i,o):r.jb(i,o);break;default:return 4}return 0}catch{return 4}},854660:()=>typeof wasmOffsetConverter<`u`};function zt(){return typeof wasmOffsetConverter<`u`}var Z=await async function(){function e(e,t){return Z=e.exports,Z=function(){var e=Z,t=e=>()=>e()>>>0,n=e=>t=>e(t)>>>0;return(e=Object.assign({},e)).Aa=t(e.Aa),e.Ca=n(e.Ca),e.Oa=n(e.Oa),e.Pa=t(e.Pa),e.__cxa_get_exception_ptr=n(e.__cxa_get_exception_ptr),e}(),Se.push(Z.Da),Ee=Z.Ea,g=t,me(),Z}pe++;var t=he();if(r.instantiateWasm)return new Promise(n=>{r.instantiateWasm(t,(t,r)=>{n(e(t,r))})});if(s)return new Promise(t=>{ne=n=>{t(e(new WebAssembly.Instance(n,he()),n))}});fe??=r.locateFile?r.locateFile?r.locateFile(`ort-wasm-simd-threaded.wasm`,p):p+`ort-wasm-simd-threaded.wasm`:new URL(`/assets/ort-wasm-simd-threaded-CxTQ5xH-.wasm`,``+import.meta.url).href;try{var i=await async function(e){var t=fe;if(!m&&typeof WebAssembly.instantiateStreaming==`function`&&!se(t))try{var n=fetch(t,{credentials:`same-origin`});return await WebAssembly.instantiateStreaming(n,e)}catch(e){w(`wasm streaming compile failed: ${e}`),w(`falling back to ArrayBuffer instantiation`)}return async function(e,t){try{var n=await async function(e){if(!m)try{var t=await c(e);return new Uint8Array(t)}catch{}if(e==fe&&m)e=new Uint8Array(m);else{if(!l)throw`both async and sync fetching of the wasm failed`;e=l(e)}return e}(e);return await WebAssembly.instantiate(n,t)}catch(e){w(`failed to asynchronously prepare wasm: ${e}`),M(e)}}(t,e)}(t);return e(i.instance,i.module)}catch(e){return n(e),Promise.reject(e)}}();r._OrtInit=(e,t)=>(r._OrtInit=Z.aa)(e,t),r._OrtGetLastError=(e,t)=>(r._OrtGetLastError=Z.ba)(e,t),r._OrtCreateSessionOptions=(e,t,n,i,a,o,s,c,l,u)=>(r._OrtCreateSessionOptions=Z.ca)(e,t,n,i,a,o,s,c,l,u),r._OrtAppendExecutionProvider=(e,t,n,i,a)=>(r._OrtAppendExecutionProvider=Z.da)(e,t,n,i,a),r._OrtAddFreeDimensionOverride=(e,t,n)=>(r._OrtAddFreeDimensionOverride=Z.ea)(e,t,n),r._OrtAddSessionConfigEntry=(e,t,n)=>(r._OrtAddSessionConfigEntry=Z.fa)(e,t,n),r._OrtReleaseSessionOptions=e=>(r._OrtReleaseSessionOptions=Z.ga)(e),r._OrtCreateSession=(e,t,n)=>(r._OrtCreateSession=Z.ha)(e,t,n),r._OrtReleaseSession=e=>(r._OrtReleaseSession=Z.ia)(e),r._OrtGetInputOutputCount=(e,t,n)=>(r._OrtGetInputOutputCount=Z.ja)(e,t,n),r._OrtGetInputOutputMetadata=(e,t,n,i)=>(r._OrtGetInputOutputMetadata=Z.ka)(e,t,n,i),r._OrtFree=e=>(r._OrtFree=Z.la)(e),r._OrtCreateTensor=(e,t,n,i,a,o)=>(r._OrtCreateTensor=Z.ma)(e,t,n,i,a,o),r._OrtGetTensorData=(e,t,n,i,a)=>(r._OrtGetTensorData=Z.na)(e,t,n,i,a),r._OrtReleaseTensor=e=>(r._OrtReleaseTensor=Z.oa)(e),r._OrtCreateRunOptions=(e,t,n,i)=>(r._OrtCreateRunOptions=Z.pa)(e,t,n,i),r._OrtAddRunConfigEntry=(e,t,n)=>(r._OrtAddRunConfigEntry=Z.qa)(e,t,n),r._OrtReleaseRunOptions=e=>(r._OrtReleaseRunOptions=Z.ra)(e),r._OrtCreateBinding=e=>(r._OrtCreateBinding=Z.sa)(e),r._OrtBindInput=(e,t,n)=>(r._OrtBindInput=Z.ta)(e,t,n),r._OrtBindOutput=(e,t,n,i)=>(r._OrtBindOutput=Z.ua)(e,t,n,i),r._OrtClearBoundOutputs=e=>(r._OrtClearBoundOutputs=Z.va)(e),r._OrtReleaseBinding=e=>(r._OrtReleaseBinding=Z.wa)(e),r._OrtRunWithBinding=(e,t,n,i,a)=>(r._OrtRunWithBinding=Z.xa)(e,t,n,i,a),r._OrtRun=(e,t,n,i,a,o,s,c)=>(r._OrtRun=Z.ya)(e,t,n,i,a,o,s,c),r._OrtEndProfiling=e=>(r._OrtEndProfiling=Z.za)(e);var Bt=()=>(Bt=Z.Aa)();r._free=e=>(r._free=Z.Ba)(e),r._malloc=e=>(r._malloc=Z.Ca)(e);var Vt=(e,t,n,r,i,a)=>(Vt=Z.Fa)(e,t,n,r,i,a),Q=()=>(Q=Z.Ga)(),$=(e,t,n,r,i)=>($=Z.Ha)(e,t,n,r,i),Ht=e=>(Ht=Z.Ia)(e),Ut=e=>(Ut=Z.Ja)(e),Wt=(e,t)=>(Wt=Z.Ka)(e,t),Gt=()=>(Gt=Z.La)(),Kt=(e,t)=>(Kt=Z.Ma)(e,t),qt=e=>(qt=Z.Na)(e),Jt=e=>(Jt=Z.Oa)(e),Yt=()=>(Yt=Z.Pa)();return function e(){if(0<pe)j=e;else if(s)t(r),de();else{for(;0<N.length;)N.shift()(r);0<pe?j=e:(r.calledRun=!0,oe||(de(),t(r)))}}(),r.PTR_SIZE=4,i},Pe=Ne,Fe=globalThis.self?.name?.startsWith(`em-pthread`),Fe&&Ne()}),Le,Re,ze,B,Be,Ve,He,Ue,We,Ge,Ke,qe,Je,Ye,Xe=l(()=>{Ee(),Le=typeof location>`u`?void 0:location.origin,Re=import.meta.url>`file:`&&import.meta.url<`file;`,ze=()=>Re?new URL(new URL(`ort.wasm.bundle.min.mjs`,import.meta.url).href,Le).href:import.meta.url,B=ze(),Be=()=>{if(B&&!B.startsWith(`blob:`))return B.substring(0,B.lastIndexOf(`/`)+1)},Ve=(e,t)=>{try{let n=t??B;return(n?new URL(e,n):new URL(e)).origin===Le}catch{return!1}},He=(e,t)=>{let n=t??B;try{return(n?new URL(e,n):new URL(e)).href}catch{return}},Ue=(e,t)=>`${t??`./`}${e}`,We=async e=>{let t=await(await fetch(e,{credentials:`same-origin`})).blob();return URL.createObjectURL(t)},Ge=async e=>(await import(
|
|
10
10
|
/*webpackIgnore:true*/
|
|
11
|
-
e)).default,Ke=(je(),f(De)).default,qe=async()=>{if(!B)throw Error(`Failed to load proxy worker: cannot determine the script source URL.`);if(Ve(B))return[void 0,Ke()];let e=await We(B);return[e,Ke(e)]},Je=(Ie(),f(Me)).default,Ye=async(e,t,n,r)=>{let i=Je&&!(e||t);if(i){if(B)i=Ve(B);else if(r&&!n)i=!0;else throw Error(`cannot determine the script source URL.`)}if(i)return[void 0,Je];{let r=`ort-wasm-simd-threaded.mjs`,i=e??He(r,t),a=n&&i&&!Ve(i,t),o=a?await We(i):i??Ue(r,t);return[a?o:void 0,await Ge(o)]}}}),Ze,Qe,V,$e,et,tt,nt,rt,H,it=l(()=>{Xe(),Qe=!1,V=!1,$e=!1,et=()=>{if(typeof SharedArrayBuffer>`u`)return!1;try{return typeof MessageChannel<`u`&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))}catch{return!1}},tt=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,30,1,28,0,65,0,253,15,253,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,186,1,26,11]))}catch{return!1}},nt=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,19,1,17,0,65,1,253,15,65,2,253,15,65,3,253,15,253,147,2,11]))}catch{return!1}},rt=async e=>{if(Qe)return Promise.resolve();if(V)throw Error(`multiple calls to 'initializeWebAssembly()' detected.`);if($e)throw Error(`previous call to 'initializeWebAssembly()' failed.`);V=!0;let t=e.initTimeout,n=e.numThreads;if(e.simd!==!1){if(e.simd===`relaxed`){if(!nt())throw Error(`Relaxed WebAssembly SIMD is not supported in the current environment.`)}else if(!tt())throw Error(`WebAssembly SIMD is not supported in the current environment.`)}let r=et();n>1&&!r&&(typeof self<`u`&&!self.crossOriginIsolated&&console.warn(`env.wasm.numThreads is set to `+n+`, but this will not work unless you enable crossOriginIsolated mode. See https://web.dev/cross-origin-isolation-guide/ for more info.`),console.warn(`WebAssembly multi-threading is not supported in the current environment. Falling back to single-threading.`),e.numThreads=n=1);let i=e.wasmPaths,a=typeof i==`string`?i:void 0,o=i?.mjs,s=o?.href??o,c=i?.wasm,l=c?.href??c,u=e.wasmBinary,[d,f]=await Ye(s,a,n>1,!!u||!!l),p=!1,m=[];if(t>0&&m.push(new Promise(e=>{setTimeout(()=>{p=!0,e()},t)})),m.push(new Promise((e,t)=>{let r={numThreads:n};if(u)r.wasmBinary=u;else if(l||a)r.locateFile=e=>l??a+e;else if(s&&s.indexOf(`blob:`)!==0)r.locateFile=e=>new URL(e,s).href;else if(d){let e=Be();e&&(r.locateFile=t=>e+t)}f(r).then(t=>{V=!1,Qe=!0,Ze=t,e(),d&&URL.revokeObjectURL(d)},e=>{V=!1,$e=!0,t(e)})})),await Promise.race(m),p)throw Error(`WebAssembly backend initializing failed due to timeout: ${t}ms`)},H=()=>{if(Qe&&Ze)return Ze;throw Error(`WebAssembly is not initialized yet.`)}}),U,at,W,ot=l(()=>{it(),U=(e,t)=>{let n=H(),r=n.lengthBytesUTF8(e)+1,i=n._malloc(r);return n.stringToUTF8(e,i,r),t.push(i),i},at=(e,t,n,r)=>{if(typeof e==`object`&&e){if(n.has(e))throw Error(`Circular reference in options`);n.add(e)}Object.entries(e).forEach(([e,i])=>{let a=t?t+e:e;if(typeof i==`object`)at(i,a+`.`,n,r);else if(typeof i==`string`||typeof i==`number`)r(a,i.toString());else if(typeof i==`boolean`)r(a,i?`1`:`0`);else throw Error(`Can't handle extra config type: ${typeof i}`)})},W=e=>{let t=H(),n=t.stackSave();try{let n=t.PTR_SIZE,r=t.stackAlloc(2*n);t._OrtGetLastError(r,r+n);let i=Number(t.getValue(r,n===4?`i32`:`i64`)),a=t.getValue(r+n,`*`),o=a?t.UTF8ToString(a):``;throw Error(`${e} ERROR_CODE: ${i}, ERROR_MESSAGE: ${o}`)}finally{t.stackRestore(n)}}}),st,ct=l(()=>{it(),ot(),st=e=>{let t=H(),n=0,r=[],i=e||{};try{if(e?.logSeverityLevel===void 0)i.logSeverityLevel=2;else if(typeof e.logSeverityLevel!=`number`||!Number.isInteger(e.logSeverityLevel)||e.logSeverityLevel<0||e.logSeverityLevel>4)throw Error(`log severity level is not valid: ${e.logSeverityLevel}`);if(e?.logVerbosityLevel===void 0)i.logVerbosityLevel=0;else if(typeof e.logVerbosityLevel!=`number`||!Number.isInteger(e.logVerbosityLevel))throw Error(`log verbosity level is not valid: ${e.logVerbosityLevel}`);e?.terminate===void 0&&(i.terminate=!1);let a=0;return e?.tag!==void 0&&(a=U(e.tag,r)),n=t._OrtCreateRunOptions(i.logSeverityLevel,i.logVerbosityLevel,!!i.terminate,a),n===0&&W(`Can't create run options.`),e?.extra!==void 0&&at(e.extra,``,/* @__PURE__ */ new WeakSet,(e,i)=>{let a=U(e,r),o=U(i,r);t._OrtAddRunConfigEntry(n,a,o)!==0&&W(`Can't set a run config entry: ${e} - ${i}.`)}),[n,r]}catch(e){throw n!==0&&t._OrtReleaseRunOptions(n),r.forEach(e=>t._free(e)),e}}}),lt,ut,dt,ft,G,pt,mt=l(()=>{it(),ot(),lt=e=>{switch(e){case`disabled`:return 0;case`basic`:return 1;case`extended`:return 2;case`layout`:return 3;case`all`:return 99;default:throw Error(`unsupported graph optimization level: ${e}`)}},ut=e=>{switch(e){case`sequential`:return 0;case`parallel`:return 1;default:throw Error(`unsupported execution mode: ${e}`)}},dt=e=>{e.extra||={},e.extra.session||(e.extra.session={});let t=e.extra.session;t.use_ort_model_bytes_directly||=`1`,e.executionProviders&&e.executionProviders.some(e=>(typeof e==`string`?e:e.name)===`webgpu`)&&(e.enableMemPattern=!1)},ft=(e,t,n,r)=>{let i=U(t,r),a=U(n,r);H()._OrtAddSessionConfigEntry(e,i,a)!==0&&W(`Can't set a session config entry: ${t} - ${n}.`)},G=async(e,t,n)=>{for(let r of t){let t=typeof r==`string`?r:r.name,i=[];switch(t){case`webnn`:if(t=`WEBNN`,typeof r!=`string`){let t=r?.deviceType;t&&ft(e,`deviceType`,t,n)}break;case`webgpu`:if(t=`JS`,typeof r!=`string`){let t=r;if(t?.preferredLayout){if(t.preferredLayout!==`NCHW`&&t.preferredLayout!==`NHWC`)throw Error(`preferredLayout must be either 'NCHW' or 'NHWC': ${t.preferredLayout}`);ft(e,`preferredLayout`,t.preferredLayout,n)}}break;case`wasm`:case`cpu`:continue;default:throw Error(`not supported execution provider: ${t}`)}let a=U(t,n),o=i.length,s=0,c=0;if(o>0){s=H()._malloc(o*H().PTR_SIZE),n.push(s),c=H()._malloc(o*H().PTR_SIZE),n.push(c);for(let e=0;e<o;e++)H().setValue(s+e*H().PTR_SIZE,i[e][0],`*`),H().setValue(c+e*H().PTR_SIZE,i[e][1],`*`)}await H()._OrtAppendExecutionProvider(e,a,s,c,o)!==0&&W(`Can't append execution provider: ${t}.`)}},pt=async e=>{let t=H(),n=0,r=[],i=e||{};dt(i);try{let e=lt(i.graphOptimizationLevel??`all`),a=ut(i.executionMode??`sequential`),o=typeof i.logId==`string`?U(i.logId,r):0,s=i.logSeverityLevel??2;if(!Number.isInteger(s)||s<0||s>4)throw Error(`log severity level is not valid: ${s}`);let c=i.logVerbosityLevel??0;if(!Number.isInteger(c)||c<0||c>4)throw Error(`log verbosity level is not valid: ${c}`);let l=typeof i.optimizedModelFilePath==`string`?U(i.optimizedModelFilePath,r):0;if(n=t._OrtCreateSessionOptions(e,!!i.enableCpuMemArena,!!i.enableMemPattern,a,!!i.enableProfiling,0,o,s,c,l),n===0&&W(`Can't create session options.`),i.executionProviders&&await G(n,i.executionProviders,r),i.enableGraphCapture!==void 0){if(typeof i.enableGraphCapture!=`boolean`)throw Error(`enableGraphCapture must be a boolean value: ${i.enableGraphCapture}`);ft(n,`enableGraphCapture`,i.enableGraphCapture.toString(),r)}if(i.freeDimensionOverrides)for(let[e,a]of Object.entries(i.freeDimensionOverrides)){if(typeof e!=`string`)throw Error(`free dimension override name must be a string: ${e}`);if(typeof a!=`number`||!Number.isInteger(a)||a<0)throw Error(`free dimension override value must be a non-negative integer: ${a}`);let i=U(e,r);t._OrtAddFreeDimensionOverride(n,i,a)!==0&&W(`Can't set a free dimension override: ${e} - ${a}.`)}return i.extra!==void 0&&at(i.extra,``,/* @__PURE__ */ new WeakSet,(e,t)=>{ft(n,e,t,r)}),[n,r]}catch(e){throw n!==0&&t._OrtReleaseSessionOptions(n)!==0&&W(`Can't release session options.`),r.forEach(e=>t._free(e)),e}}}),ht,gt,K,_t,vt,yt,bt,xt,St=l(()=>{ht=e=>{switch(e){case`int8`:return 3;case`uint8`:return 2;case`bool`:return 9;case`int16`:return 5;case`uint16`:return 4;case`int32`:return 6;case`uint32`:return 12;case`float16`:return 10;case`float32`:return 1;case`float64`:return 11;case`string`:return 8;case`int64`:return 7;case`uint64`:return 13;case`int4`:return 22;case`uint4`:return 21;default:throw Error(`unsupported data type: ${e}`)}},gt=e=>{switch(e){case 3:return`int8`;case 2:return`uint8`;case 9:return`bool`;case 5:return`int16`;case 4:return`uint16`;case 6:return`int32`;case 12:return`uint32`;case 10:return`float16`;case 1:return`float32`;case 11:return`float64`;case 8:return`string`;case 7:return`int64`;case 13:return`uint64`;case 22:return`int4`;case 21:return`uint4`;default:throw Error(`unsupported data type: ${e}`)}},K=(e,t)=>{let n=[-1,4,1,1,2,2,4,8,-1,1,2,8,4,8,-1,-1,-1,-1,-1,-1,-1,.5,.5][e],r=typeof t==`number`?t:t.reduce((e,t)=>e*t,1);return n>0?Math.ceil(r*n):void 0},_t=e=>{switch(e){case`float16`:return typeof Float16Array<`u`&&Float16Array.from?Float16Array:Uint16Array;case`float32`:return Float32Array;case`uint8`:return Uint8Array;case`int8`:return Int8Array;case`uint16`:return Uint16Array;case`int16`:return Int16Array;case`int32`:return Int32Array;case`bool`:return Uint8Array;case`float64`:return Float64Array;case`uint32`:return Uint32Array;case`int64`:return BigInt64Array;case`uint64`:return BigUint64Array;default:throw Error(`unsupported type: ${e}`)}},vt=e=>{switch(e){case`verbose`:return 0;case`info`:return 1;case`warning`:return 2;case`error`:return 3;case`fatal`:return 4;default:throw Error(`unsupported logging level: ${e}`)}},yt=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,bt=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint64`||e===`int8`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,xt=e=>{switch(e){case`none`:return 0;case`cpu`:return 1;case`cpu-pinned`:return 2;case`texture`:return 3;case`gpu-buffer`:return 4;case`ml-tensor`:return 5;default:throw Error(`unsupported data location: ${e}`)}}}),Ct,wt=l(()=>{Ee(),Ct=async e=>{if(typeof e==`string`){let t=await fetch(e);if(!t.ok)throw Error(`failed to load external data file: ${e}`);let n=t.headers.get(`Content-Length`),r=n?parseInt(n,10):0;if(r<1073741824)return new Uint8Array(await t.arrayBuffer());{if(!t.body)throw Error(`failed to load external data file: ${e}, no response body.`);let n=t.body.getReader(),i;try{i=new ArrayBuffer(r)}catch(e){if(e instanceof RangeError){let e=Math.ceil(r/65536);i=new WebAssembly.Memory({initial:e,maximum:e}).buffer}else throw e}let a=0;for(;;){let{done:e,value:t}=await n.read();if(e)break;let r=t.byteLength;new Uint8Array(i,a,r).set(t),a+=r}return new Uint8Array(i,0,r)}}return e instanceof Blob?new Uint8Array(await e.arrayBuffer()):e instanceof Uint8Array?e:new Uint8Array(e)}}),Tt,q,Et,J,Dt,Ot,kt,At,jt,Mt,Nt,Pt,Ft,It=l(()=>{z(),ct(),mt(),St(),it(),ot(),wt(),Tt=(e,t)=>{H()._OrtInit(e,t)!==0&&W(`Can't initialize onnxruntime.`)},q=async e=>{Tt(e.wasm.numThreads,vt(e.logLevel))},Et=async(e,t)=>{H().asyncInit?.();let n=e.webgpu.adapter;if(t===`webgpu`){if(typeof navigator>`u`||!navigator.gpu)throw Error(`WebGPU is not supported in current environment`);if(n){if(typeof n.limits!=`object`||typeof n.features!=`object`||typeof n.requestDevice!=`function`)throw Error("Invalid GPU adapter set in `env.webgpu.adapter`. It must be a GPUAdapter object.")}else{let t=e.webgpu.powerPreference;if(t!==void 0&&t!==`low-power`&&t!==`high-performance`)throw Error(`Invalid powerPreference setting: "${t}"`);let r=e.webgpu.forceFallbackAdapter;if(r!==void 0&&typeof r!=`boolean`)throw Error(`Invalid forceFallbackAdapter setting: "${r}"`);if(n=await navigator.gpu.requestAdapter({powerPreference:t,forceFallbackAdapter:r}),!n)throw Error(`Failed to get GPU adapter. You may need to enable flag "--enable-unsafe-webgpu" if you are using Chrome.`)}}if(t===`webnn`&&(typeof navigator>`u`||!navigator.ml))throw Error(`WebNN is not supported in current environment`)},J=/* @__PURE__ */ new Map,Dt=e=>{let t=H(),n=t.stackSave();try{let n=t.PTR_SIZE,r=t.stackAlloc(2*n);t._OrtGetInputOutputCount(e,r,r+n)!==0&&W(`Can't get session input/output count.`);let i=n===4?`i32`:`i64`;return[Number(t.getValue(r,i)),Number(t.getValue(r+n,i))]}finally{t.stackRestore(n)}},Ot=(e,t)=>{let n=H(),r=n.stackSave(),i=0;try{let r=n.PTR_SIZE,a=n.stackAlloc(2*r);n._OrtGetInputOutputMetadata(e,t,a,a+r)!==0&&W(`Can't get session input/output metadata.`);let o=Number(n.getValue(a,`*`));i=Number(n.getValue(a+r,`*`));let s=n.HEAP32[i/4];if(s===0)return[o,0];let c=n.HEAPU32[i/4+1],l=[];for(let e=0;e<c;e++){let t=Number(n.getValue(i+8+e*r,`*`));l.push(t===0?Number(n.getValue(i+8+(e+c)*r,`*`)):n.UTF8ToString(t))}return[o,s,l]}finally{n.stackRestore(r),i!==0&&n._OrtFree(i)}},kt=e=>{let t=H(),n=t._malloc(e.byteLength);if(n===0)throw Error(`Can't create a session. failed to allocate a buffer of size ${e.byteLength}.`);return t.HEAPU8.set(e,n),[n,e.byteLength]},At=async(e,t)=>{let n,r,i=H();Array.isArray(e)?[n,r]=e:e.buffer===i.HEAPU8.buffer?[n,r]=[e.byteOffset,e.byteLength]:[n,r]=kt(e);let a=0,o=0,s=[],c=[],l=[];try{if([o,s]=await pt(t),t?.externalData&&i.mountExternalData){let e=[];for(let n of t.externalData){let t=typeof n==`string`?n:n.path;e.push(Ct(typeof n==`string`?n:n.data).then(e=>{i.mountExternalData(t,e)}))}await Promise.all(e)}for(let e of t?.executionProviders??[])if((typeof e==`string`?e:e.name)===`webnn`){if(i.shouldTransferToMLTensor=!1,typeof e!=`string`){let t=e,n=t?.context,r=t?.gpuDevice,a=t?.deviceType,o=t?.powerPreference;i.currentContext=n||(r?await i.webnnCreateMLContext(r):await i.webnnCreateMLContext({deviceType:a,powerPreference:o}))}else i.currentContext=await i.webnnCreateMLContext();break}a=await i._OrtCreateSession(n,r,o),i.webgpuOnCreateSession?.(a),a===0&&W(`Can't create a session.`),i.jsepOnCreateSession?.(),i.currentContext&&(i.webnnRegisterMLContext(a,i.currentContext),i.currentContext=void 0,i.shouldTransferToMLTensor=!0);let[e,u]=Dt(a),d=!!t?.enableGraphCapture,f=[],p=[],m=[],h=[];for(let t=0;t<e;t++){let[e,n,r]=Ot(a,t);e===0&&W(`Can't get an input name.`),c.push(e);let o=i.UTF8ToString(e);f.push(o),m.push(n===0?{name:o,isTensor:!1}:{name:o,isTensor:!0,type:gt(n),shape:r})}for(let t=0;t<u;t++){let[n,r,o]=Ot(a,t+e);n===0&&W(`Can't get an output name.`),l.push(n);let s=i.UTF8ToString(n);p.push(s),h.push(r===0?{name:s,isTensor:!1}:{name:s,isTensor:!0,type:gt(r),shape:o})}return J.set(a,[a,c,l,null,d,!1]),[a,f,p,m,h]}catch(e){throw c.forEach(e=>i._OrtFree(e)),l.forEach(e=>i._OrtFree(e)),a!==0&&i._OrtReleaseSession(a)!==0&&W(`Can't release session.`),e}finally{i._free(n),o!==0&&i._OrtReleaseSessionOptions(o)!==0&&W(`Can't release session options.`),s.forEach(e=>i._free(e)),i.unmountExternalData?.()}},jt=e=>{let t=H(),n=J.get(e);if(!n)throw Error(`cannot release session. invalid session id: ${e}`);let[r,i,a,o,s]=n;o&&(s&&t._OrtClearBoundOutputs(o.handle)!==0&&W(`Can't clear bound outputs.`),t._OrtReleaseBinding(o.handle)!==0&&W(`Can't release IO binding.`)),t.jsepOnReleaseSession?.(e),t.webnnOnReleaseSession?.(e),t.webgpuOnReleaseSession?.(e),i.forEach(e=>t._OrtFree(e)),a.forEach(e=>t._OrtFree(e)),t._OrtReleaseSession(r)!==0&&W(`Can't release session.`),J.delete(e)},Mt=async(e,t,n,r,i,a,o=!1)=>{if(!e){t.push(0);return}let s=H(),c=s.PTR_SIZE,l=e[0],u=e[1],d=e[3],f=d,p,m;if(l===`string`&&(d===`gpu-buffer`||d===`ml-tensor`))throw Error(`String tensor is not supported on GPU.`);if(o&&d!==`gpu-buffer`)throw Error(`External buffer must be provided for input/output index ${a} when enableGraphCapture is true.`);if(d===`gpu-buffer`){let t=e[2].gpuBuffer;m=K(ht(l),u);{let e=s.jsepRegisterBuffer;if(!e)throw Error(`Tensor location "gpu-buffer" is not supported without using WebGPU.`);p=e(r,a,t,m)}}else if(d===`ml-tensor`){let t=e[2].mlTensor;m=K(ht(l),u);let n=s.webnnRegisterMLTensor;if(!n)throw Error(`Tensor location "ml-tensor" is not supported without using WebNN.`);p=n(r,t,ht(l),u)}else{let t=e[2];if(Array.isArray(t)){m=c*t.length,p=s._malloc(m),n.push(p);for(let e=0;e<t.length;e++){if(typeof t[e]!=`string`)throw TypeError(`tensor data at index ${e} is not a string`);s.setValue(p+e*c,U(t[e],n),`*`)}}else{let e=s.webnnIsGraphInput,a=s.webnnIsGraphOutput;if(l!==`string`&&e&&a){let o=s.UTF8ToString(i);if(e(r,o)||a(r,o)){let e=ht(l);m=K(e,u),f=`ml-tensor`;let n=s.webnnCreateTemporaryTensor,i=s.webnnUploadTensor;if(!n||!i)throw Error(`Tensor location "ml-tensor" is not supported without using WebNN.`);let a=await n(r,e,u);i(a,new Uint8Array(t.buffer,t.byteOffset,t.byteLength)),p=a}else m=t.byteLength,p=s._malloc(m),n.push(p),s.HEAPU8.set(new Uint8Array(t.buffer,t.byteOffset,m),p)}else m=t.byteLength,p=s._malloc(m),n.push(p),s.HEAPU8.set(new Uint8Array(t.buffer,t.byteOffset,m),p)}}let h=s.stackSave(),g=s.stackAlloc(4*u.length);try{u.forEach((e,t)=>s.setValue(g+t*c,e,c===4?`i32`:`i64`));let e=s._OrtCreateTensor(ht(l),p,m,g,u.length,xt(f));e===0&&W(`Can't create tensor for input/output. session=${r}, index=${a}.`),t.push(e)}finally{s.stackRestore(h)}},Nt=async(e,t,n,r,i,a)=>{let o=H(),s=o.PTR_SIZE,c=J.get(e);if(!c)throw Error(`cannot run inference. invalid session id: ${e}`);let l=c[0],u=c[1],d=c[2],f=c[3],p=c[4];c[5];let m=t.length,h=r.length,g=0,_=[],v=[],y=[],ee=[],b=o.stackSave(),te=o.stackAlloc(m*s),x=o.stackAlloc(m*s),S=o.stackAlloc(h*s),C=o.stackAlloc(h*s);try{[g,_]=st(a),F(`wasm prepareInputOutputTensor`);for(let r=0;r<m;r++)await Mt(n[r],v,ee,e,u[t[r]],t[r],p);for(let t=0;t<h;t++)await Mt(i[t],y,ee,e,d[r[t]],m+r[t],p);I(`wasm prepareInputOutputTensor`);for(let e=0;e<m;e++)o.setValue(te+e*s,v[e],`*`),o.setValue(x+e*s,u[t[e]],`*`);for(let e=0;e<h;e++)o.setValue(S+e*s,y[e],`*`),o.setValue(C+e*s,d[r[e]],`*`);o.jsepOnRunStart?.(l),o.webnnOnRunStart?.(l);let c;c=await o._OrtRun(l,x,te,m,C,h,S,g),c!==0&&W(`failed to call OrtRun().`);let b=[],ne=[];F(`wasm ProcessOutputTensor`);for(let t=0;t<h;t++){let n=Number(o.getValue(S+t*s,`*`));if(n===y[t]){b.push(i[t]);continue}let a=o.stackSave(),c=o.stackAlloc(4*s),l=!1,u,d=0;try{o._OrtGetTensorData(n,c,c+s,c+2*s,c+3*s)!==0&&W(`Can't access output tensor data on index ${t}.`);let i=s===4?`i32`:`i64`,a=Number(o.getValue(c,i));d=o.getValue(c+s,`*`);let p=o.getValue(c+s*2,`*`),m=Number(o.getValue(c+s*3,i)),h=[];for(let e=0;e<m;e++)h.push(Number(o.getValue(p+e*s,i)));o._OrtFree(p)!==0&&W(`Can't free memory for tensor dims.`);let g=h.reduce((e,t)=>e*t,1);u=gt(a);let _=f?.outputPreferredLocations[r[t]];if(u===`string`){if(_===`gpu-buffer`||_===`ml-tensor`)throw Error(`String tensor is not supported on GPU.`);let e=[];for(let t=0;t<g;t++){let n=o.getValue(d+t*s,`*`),r=o.getValue(d+(t+1)*s,`*`),i=t===g-1?void 0:r-n;e.push(o.UTF8ToString(n,i))}b.push([u,h,e,`cpu`])}else if(_===`gpu-buffer`&&g>0){let e=o.jsepGetBuffer;if(!e)throw Error(`preferredLocation "gpu-buffer" is not supported without using WebGPU.`);let t=e(d),r=K(a,g);if(r===void 0||!yt(u))throw Error(`Unsupported data type: ${u}`);l=!0,b.push([u,h,{gpuBuffer:t,download:o.jsepCreateDownloader(t,r,u),dispose:()=>{o._OrtReleaseTensor(n)!==0&&W(`Can't release tensor.`)}},`gpu-buffer`])}else if(_===`ml-tensor`&&g>0){let t=o.webnnEnsureTensor,r=o.webnnIsGraphInputOutputTypeSupported;if(!t||!r)throw Error(`preferredLocation "ml-tensor" is not supported without using WebNN.`);if(K(a,g)===void 0||!bt(u))throw Error(`Unsupported data type: ${u}`);if(!r(e,u,!1))throw Error(`preferredLocation "ml-tensor" for ${u} output is not supported by current WebNN Context.`);let i=await t(e,d,a,h,!1);l=!0,b.push([u,h,{mlTensor:i,download:o.webnnCreateMLTensorDownloader(d,u),dispose:()=>{o.webnnReleaseTensorId(d),o._OrtReleaseTensor(n)}},`ml-tensor`])}else if(_===`ml-tensor-cpu-output`&&g>0){let e=o.webnnCreateMLTensorDownloader(d,u)(),t=b.length;l=!0,ne.push((async()=>{let r=[t,await e];return o.webnnReleaseTensorId(d),o._OrtReleaseTensor(n),r})()),b.push([u,h,[],`cpu`])}else{let e=new(_t(u))(g);new Uint8Array(e.buffer,e.byteOffset,e.byteLength).set(o.HEAPU8.subarray(d,d+e.byteLength)),b.push([u,h,e,`cpu`])}}finally{o.stackRestore(a),u===`string`&&d&&o._free(d),l||o._OrtReleaseTensor(n)}}f&&!p&&(o._OrtClearBoundOutputs(f.handle)!==0&&W(`Can't clear bound outputs.`),J.set(e,[l,u,d,f,p,!1]));for(let[e,t]of await Promise.all(ne))b[e][2]=t;return I(`wasm ProcessOutputTensor`),b}finally{o.webnnOnRunEnd?.(l),o.stackRestore(b),v.forEach(e=>o._OrtReleaseTensor(e)),y.forEach(e=>o._OrtReleaseTensor(e)),ee.forEach(e=>o._free(e)),g!==0&&o._OrtReleaseRunOptions(g),_.forEach(e=>o._free(e))}},Pt=e=>{let t=H(),n=J.get(e);if(!n)throw Error(`invalid session id`);let r=n[0],i=t._OrtEndProfiling(r);i===0&&W(`Can't get an profile file name.`),t._OrtFree(i)},Ft=e=>{let t=[];for(let n of e){let e=n[2];!Array.isArray(e)&&`buffer`in e&&t.push(e.buffer)}return t}}),Y,X,Lt,Rt,zt,Z,Bt,Vt,Q,$,Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt=l(()=>{z(),It(),it(),Xe(),Y=()=>!!C.wasm.proxy&&typeof document<`u`,Lt=!1,Rt=!1,zt=!1,Vt=/* @__PURE__ */ new Map,Q=(e,t)=>{let n=Vt.get(e);n?n.push(t):Vt.set(e,[t])},$=()=>{if(Lt||!Rt||zt||!X)throw Error(`worker not ready`)},Ht=e=>{switch(e.data.type){case`init-wasm`:Lt=!1,e.data.err?(zt=!0,Bt[1](e.data.err)):(Rt=!0,Bt[0]()),Z&&=(URL.revokeObjectURL(Z),void 0);break;case`init-ep`:case`copy-from`:case`create`:case`release`:case`run`:case`end-profiling`:{let t=Vt.get(e.data.type);e.data.err?t.shift()[1](e.data.err):t.shift()[0](e.data.out);break}}},Ut=async()=>{if(!Rt){if(Lt)throw Error(`multiple calls to 'initWasm()' detected.`);if(zt)throw Error(`previous call to 'initWasm()' failed.`);if(Lt=!0,Y())return new Promise((e,t)=>{X?.terminate(),qe().then(([n,r])=>{try{X=r,X.onerror=e=>t(e),X.onmessage=Ht,Bt=[e,t];let i={type:`init-wasm`,in:C};!i.in.wasm.wasmPaths&&(n||Re)&&(i.in.wasm.wasmPaths={wasm:new URL(`/assets/ort-wasm-simd-threaded-CxTQ5xH-.wasm`,``+import.meta.url).href}),X.postMessage(i),Z=n}catch(e){t(e)}},t)});try{await rt(C.wasm),await q(C),Rt=!0}catch(e){throw zt=!0,e}finally{Lt=!1}}},Wt=async e=>{if(Y())return $(),new Promise((t,n)=>{Q(`init-ep`,[t,n]);let r={type:`init-ep`,in:{epName:e,env:C}};X.postMessage(r)});await Et(C,e)},Gt=async e=>Y()?($(),new Promise((t,n)=>{Q(`copy-from`,[t,n]);let r={type:`copy-from`,in:{buffer:e}};X.postMessage(r,[e.buffer])})):kt(e),Kt=async(e,t)=>{if(Y()){if(t?.preferredOutputLocation)throw Error(`session option "preferredOutputLocation" is not supported for proxy.`);return $(),new Promise((n,r)=>{Q(`create`,[n,r]);let i={type:`create`,in:{model:e,options:{...t}}},a=[];e instanceof Uint8Array&&a.push(e.buffer),X.postMessage(i,a)})}return At(e,t)},qt=async e=>{if(Y())return $(),new Promise((t,n)=>{Q(`release`,[t,n]);let r={type:`release`,in:e};X.postMessage(r)});jt(e)},Jt=async(e,t,n,r,i,a)=>{if(Y()){if(n.some(e=>e[3]!==`cpu`))throw Error(`input tensor on GPU is not supported for proxy.`);if(i.some(e=>e))throw Error(`pre-allocated output tensor is not supported for proxy.`);return $(),new Promise((i,o)=>{Q(`run`,[i,o]);let s=n,c={type:`run`,in:{sessionId:e,inputIndices:t,inputs:s,outputIndices:r,options:a}};X.postMessage(c,Ft(s))})}return Nt(e,t,n,r,i,a)},Yt=async e=>{if(Y())return $(),new Promise((t,n)=>{Q(`end-profiling`,[t,n]);let r={type:`end-profiling`,in:e};X.postMessage(r)});Pt(e)}}),Zt,Qt,$t,en=l(()=>{z(),Xt(),St(),Ee(),wt(),Zt=(e,t)=>{switch(e.location){case`cpu`:return[e.type,e.dims,e.data,`cpu`];case`gpu-buffer`:return[e.type,e.dims,{gpuBuffer:e.gpuBuffer},`gpu-buffer`];case`ml-tensor`:return[e.type,e.dims,{mlTensor:e.mlTensor},`ml-tensor`];default:throw Error(`invalid data location: ${e.location} for ${t()}`)}},Qt=e=>{switch(e[3]){case`cpu`:return new M(e[0],e[2],e[1]);case`gpu-buffer`:{let t=e[0];if(!yt(t))throw Error(`not supported data type: ${t} for deserializing GPU tensor`);let{gpuBuffer:n,download:r,dispose:i}=e[2];return M.fromGpuBuffer(n,{dataType:t,dims:e[1],download:r,dispose:i})}case`ml-tensor`:{let t=e[0];if(!bt(t))throw Error(`not supported data type: ${t} for deserializing MLTensor tensor`);let{mlTensor:n,download:r,dispose:i}=e[2];return M.fromMLTensor(n,{dataType:t,dims:e[1],download:r,dispose:i})}default:throw Error(`invalid data location: ${e[3]}`)}},$t=class{async fetchModelAndCopyToWasmMemory(e){return Gt(await Ct(e))}async loadModel(e,t){N();let n;n=typeof e==`string`?await this.fetchModelAndCopyToWasmMemory(e):e,[this.sessionId,this.inputNames,this.outputNames,this.inputMetadata,this.outputMetadata]=await Kt(n,t),P()}async dispose(){return qt(this.sessionId)}async run(e,t,n){N();let r=[],i=[];Object.entries(e).forEach(e=>{let t=e[0],n=e[1],a=this.inputNames.indexOf(t);if(a===-1)throw Error(`invalid input '${t}'`);r.push(n),i.push(a)});let a=[],o=[];Object.entries(t).forEach(e=>{let t=e[0],n=e[1],r=this.outputNames.indexOf(t);if(r===-1)throw Error(`invalid output '${t}'`);a.push(n),o.push(r)});let s=r.map((e,t)=>Zt(e,()=>`input "${this.inputNames[i[t]]}"`)),c=a.map((e,t)=>e?Zt(e,()=>`output "${this.outputNames[o[t]]}"`):null),l=await Jt(this.sessionId,i,s,o,c,n),u={};for(let e=0;e<l.length;e++)u[this.outputNames[o[e]]]=a[e]??Qt(l[e]);return P(),u}startProfiling(){}endProfiling(){Yt(this.sessionId)}}}),tn={};u(tn,{OnnxruntimeWebAssemblyBackend:()=>rn,initializeFlags:()=>nn,wasmBackend:()=>an});var nn,rn,an,on=l(()=>{z(),Xt(),en(),nn=()=>{(typeof C.wasm.initTimeout!=`number`||C.wasm.initTimeout<0)&&(C.wasm.initTimeout=0);let e=C.wasm.simd;if(typeof e!=`boolean`&&e!==void 0&&e!==`fixed`&&e!==`relaxed`&&(console.warn(`Property "env.wasm.simd" is set to unknown value "${e}". Reset it to \`false\` and ignore SIMD feature checking.`),C.wasm.simd=!1),typeof C.wasm.proxy!=`boolean`&&(C.wasm.proxy=!1),typeof C.wasm.trace!=`boolean`&&(C.wasm.trace=!1),typeof C.wasm.numThreads!=`number`||!Number.isInteger(C.wasm.numThreads)||C.wasm.numThreads<=0){if(typeof self<`u`&&!self.crossOriginIsolated)C.wasm.numThreads=1;else{let e=typeof navigator>`u`?c(`node:os`).cpus().length:navigator.hardwareConcurrency;C.wasm.numThreads=Math.min(4,Math.ceil((e||1)/2))}}},rn=class{async init(e){nn(),await Ut(),await Wt(e)}async createInferenceSessionHandler(e,t){let n=new $t;return await n.loadModel(e,t),n}},an=new rn});z(),z(),z();var sn=`1.23.2`,cn=Te;{let e=(on(),f(tn)).wasmBackend;h(`cpu`,e,10),h(`wasm`,e,10)}Object.defineProperty(C.versions,"web",{value:sn,enumerable:!0});var ln=`/assets/silero_vad-Dt9-bTDn.onnx`;[.../* @__PURE__ */ new Set([`um`,`umm`,`uh`,`uhh`,`uhm`,`erm`,`er`,`eh`,`ah`,`hmm`,`hm`,`mm`,`mmm`,`mhm`,`mm-hmm`,`uh-huh`])];const un=Object.freeze({minSpeechMs:300,endSilenceMs:350,trailingKeepMs:200,preRollMs:300,holdMs:800});un.trailingKeepMs;const dn=Object.freeze({startProb:.6,endProb:.35,speakingStartProb:.85,minSpeechMs:250,endSilenceMs:un.endSilenceMs,maxSegmentMs:6e4,gateDb:3,energyMarginDb:10,energyMinSpeechMs:un.minSpeechMs});Object.freeze([`low`,`normal`,`high`]),Object.freeze({low:Object.freeze({...dn,startProb:.75,endProb:.45,speakingStartProb:.92,minSpeechMs:350,gateDb:6,energyMarginDb:13,energyMinSpeechMs:400}),normal:dn,high:Object.freeze({...dn,startProb:.45,endProb:.25,speakingStartProb:.75,minSpeechMs:180,gateDb:0,energyMarginDb:7,energyMinSpeechMs:250})});var fn=class e{ort;session;state=/* @__PURE__ */ new Float32Array(256);context=/* @__PURE__ */ new Float32Array(64);sr;constructor(e,t){this.ort=e,this.session=t,this.sr=new e.Tensor(`int64`,BigInt64Array.from([BigInt(16e3)]),[])}static async load(t,n){let r=await t.InferenceSession.create(n,{executionProviders:[`wasm`],graphOptimizationLevel:`all`});return new e(t,r)}reset(){this.state=/* @__PURE__ */ new Float32Array(256),this.context=/* @__PURE__ */ new Float32Array(64)}async probability(e){if(e.length!==512)throw Error(`Silero VAD needs 512-sample chunks, got ${e.length}`);let t=/* @__PURE__ */ new Float32Array(576);t.set(this.context),t.set(e,64),this.context=e.slice(448);let n=await this.session.run({input:new this.ort.Tensor(`float32`,t,[1,t.length]),state:new this.ort.Tensor(`float32`,this.state,[2,1,128]),sr:this.sr});return this.state=Float32Array.from(n.stateN.data),n.output.data[0]}};C.wasm.numThreads=1,C.wasm.proxy=!1,C.logLevel=`error`;const pn=self,mn=performance.now(),hn=(async()=>{let e=await fetch(ln);if(!e.ok)throw Error(`model download failed (${e.status})`);return fn.load(r,new Uint8Array(await e.arrayBuffer()))})();hn.then(()=>pn.postMessage({type:`ready`,ms:Math.round(performance.now()-mn)}),e=>pn.postMessage({type:`error`,message:e instanceof Error?e.message:String(e)}));let gn=Promise.resolve();pn.onmessage=e=>{let t=e.data;gn=gn.then(async()=>{let e;try{e=await hn}catch(e){t.type===`chunk`&&pn.postMessage({type:`fail`,id:t.id,message:String(e?.message??e)});return}if(t.type===`reset`)return e.reset();if(t.type===`chunk`)try{pn.postMessage({type:`prob`,id:t.id,p:await e.probability(t.samples)})}catch(e){pn.postMessage({type:`fail`,id:t.id,message:String(e?.message??e)})}})};
|
|
11
|
+
e)).default,Ke=(je(),f(De)).default,qe=async()=>{if(!B)throw Error(`Failed to load proxy worker: cannot determine the script source URL.`);if(Ve(B))return[void 0,Ke()];let e=await We(B);return[e,Ke(e)]},Je=(Ie(),f(Me)).default,Ye=async(e,t,n,r)=>{let i=Je&&!(e||t);if(i){if(B)i=Ve(B);else if(r&&!n)i=!0;else throw Error(`cannot determine the script source URL.`)}if(i)return[void 0,Je];{let r=`ort-wasm-simd-threaded.mjs`,i=e??He(r,t),a=n&&i&&!Ve(i,t),o=a?await We(i):i??Ue(r,t);return[a?o:void 0,await Ge(o)]}}}),Ze,Qe,V,$e,et,tt,nt,rt,H,it=l(()=>{Xe(),Qe=!1,V=!1,$e=!1,et=()=>{if(typeof SharedArrayBuffer>`u`)return!1;try{return typeof MessageChannel<`u`&&new MessageChannel().port1.postMessage(new SharedArrayBuffer(1)),WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,5,4,1,3,1,1,10,11,1,9,0,65,0,254,16,2,0,26,11]))}catch{return!1}},tt=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,4,1,96,0,0,3,2,1,0,10,30,1,28,0,65,0,253,15,253,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,253,186,1,26,11]))}catch{return!1}},nt=()=>{try{return WebAssembly.validate(new Uint8Array([0,97,115,109,1,0,0,0,1,5,1,96,0,1,123,3,2,1,0,10,19,1,17,0,65,1,253,15,65,2,253,15,65,3,253,15,253,147,2,11]))}catch{return!1}},rt=async e=>{if(Qe)return Promise.resolve();if(V)throw Error(`multiple calls to 'initializeWebAssembly()' detected.`);if($e)throw Error(`previous call to 'initializeWebAssembly()' failed.`);V=!0;let t=e.initTimeout,n=e.numThreads;if(e.simd!==!1){if(e.simd===`relaxed`){if(!nt())throw Error(`Relaxed WebAssembly SIMD is not supported in the current environment.`)}else if(!tt())throw Error(`WebAssembly SIMD is not supported in the current environment.`)}let r=et();n>1&&!r&&(typeof self<`u`&&!self.crossOriginIsolated&&console.warn(`env.wasm.numThreads is set to `+n+`, but this will not work unless you enable crossOriginIsolated mode. See https://web.dev/cross-origin-isolation-guide/ for more info.`),console.warn(`WebAssembly multi-threading is not supported in the current environment. Falling back to single-threading.`),e.numThreads=n=1);let i=e.wasmPaths,a=typeof i==`string`?i:void 0,o=i?.mjs,s=o?.href??o,c=i?.wasm,l=c?.href??c,u=e.wasmBinary,[d,f]=await Ye(s,a,n>1,!!u||!!l),p=!1,m=[];if(t>0&&m.push(new Promise(e=>{setTimeout(()=>{p=!0,e()},t)})),m.push(new Promise((e,t)=>{let r={numThreads:n};if(u)r.wasmBinary=u;else if(l||a)r.locateFile=e=>l??a+e;else if(s&&s.indexOf(`blob:`)!==0)r.locateFile=e=>new URL(e,s).href;else if(d){let e=Be();e&&(r.locateFile=t=>e+t)}f(r).then(t=>{V=!1,Qe=!0,Ze=t,e(),d&&URL.revokeObjectURL(d)},e=>{V=!1,$e=!0,t(e)})})),await Promise.race(m),p)throw Error(`WebAssembly backend initializing failed due to timeout: ${t}ms`)},H=()=>{if(Qe&&Ze)return Ze;throw Error(`WebAssembly is not initialized yet.`)}}),U,at,W,ot=l(()=>{it(),U=(e,t)=>{let n=H(),r=n.lengthBytesUTF8(e)+1,i=n._malloc(r);return n.stringToUTF8(e,i,r),t.push(i),i},at=(e,t,n,r)=>{if(typeof e==`object`&&e){if(n.has(e))throw Error(`Circular reference in options`);n.add(e)}Object.entries(e).forEach(([e,i])=>{let a=t?t+e:e;if(typeof i==`object`)at(i,a+`.`,n,r);else if(typeof i==`string`||typeof i==`number`)r(a,i.toString());else if(typeof i==`boolean`)r(a,i?`1`:`0`);else throw Error(`Can't handle extra config type: ${typeof i}`)})},W=e=>{let t=H(),n=t.stackSave();try{let n=t.PTR_SIZE,r=t.stackAlloc(2*n);t._OrtGetLastError(r,r+n);let i=Number(t.getValue(r,n===4?`i32`:`i64`)),a=t.getValue(r+n,`*`),o=a?t.UTF8ToString(a):``;throw Error(`${e} ERROR_CODE: ${i}, ERROR_MESSAGE: ${o}`)}finally{t.stackRestore(n)}}}),st,ct=l(()=>{it(),ot(),st=e=>{let t=H(),n=0,r=[],i=e||{};try{if(e?.logSeverityLevel===void 0)i.logSeverityLevel=2;else if(typeof e.logSeverityLevel!=`number`||!Number.isInteger(e.logSeverityLevel)||e.logSeverityLevel<0||e.logSeverityLevel>4)throw Error(`log severity level is not valid: ${e.logSeverityLevel}`);if(e?.logVerbosityLevel===void 0)i.logVerbosityLevel=0;else if(typeof e.logVerbosityLevel!=`number`||!Number.isInteger(e.logVerbosityLevel))throw Error(`log verbosity level is not valid: ${e.logVerbosityLevel}`);e?.terminate===void 0&&(i.terminate=!1);let a=0;return e?.tag!==void 0&&(a=U(e.tag,r)),n=t._OrtCreateRunOptions(i.logSeverityLevel,i.logVerbosityLevel,!!i.terminate,a),n===0&&W(`Can't create run options.`),e?.extra!==void 0&&at(e.extra,``,/* @__PURE__ */ new WeakSet,(e,i)=>{let a=U(e,r),o=U(i,r);t._OrtAddRunConfigEntry(n,a,o)!==0&&W(`Can't set a run config entry: ${e} - ${i}.`)}),[n,r]}catch(e){throw n!==0&&t._OrtReleaseRunOptions(n),r.forEach(e=>t._free(e)),e}}}),lt,ut,dt,ft,G,pt,mt=l(()=>{it(),ot(),lt=e=>{switch(e){case`disabled`:return 0;case`basic`:return 1;case`extended`:return 2;case`layout`:return 3;case`all`:return 99;default:throw Error(`unsupported graph optimization level: ${e}`)}},ut=e=>{switch(e){case`sequential`:return 0;case`parallel`:return 1;default:throw Error(`unsupported execution mode: ${e}`)}},dt=e=>{e.extra||={},e.extra.session||(e.extra.session={});let t=e.extra.session;t.use_ort_model_bytes_directly||=`1`,e.executionProviders&&e.executionProviders.some(e=>(typeof e==`string`?e:e.name)===`webgpu`)&&(e.enableMemPattern=!1)},ft=(e,t,n,r)=>{let i=U(t,r),a=U(n,r);H()._OrtAddSessionConfigEntry(e,i,a)!==0&&W(`Can't set a session config entry: ${t} - ${n}.`)},G=async(e,t,n)=>{for(let r of t){let t=typeof r==`string`?r:r.name,i=[];switch(t){case`webnn`:if(t=`WEBNN`,typeof r!=`string`){let t=r?.deviceType;t&&ft(e,`deviceType`,t,n)}break;case`webgpu`:if(t=`JS`,typeof r!=`string`){let t=r;if(t?.preferredLayout){if(t.preferredLayout!==`NCHW`&&t.preferredLayout!==`NHWC`)throw Error(`preferredLayout must be either 'NCHW' or 'NHWC': ${t.preferredLayout}`);ft(e,`preferredLayout`,t.preferredLayout,n)}}break;case`wasm`:case`cpu`:continue;default:throw Error(`not supported execution provider: ${t}`)}let a=U(t,n),o=i.length,s=0,c=0;if(o>0){s=H()._malloc(o*H().PTR_SIZE),n.push(s),c=H()._malloc(o*H().PTR_SIZE),n.push(c);for(let e=0;e<o;e++)H().setValue(s+e*H().PTR_SIZE,i[e][0],`*`),H().setValue(c+e*H().PTR_SIZE,i[e][1],`*`)}await H()._OrtAppendExecutionProvider(e,a,s,c,o)!==0&&W(`Can't append execution provider: ${t}.`)}},pt=async e=>{let t=H(),n=0,r=[],i=e||{};dt(i);try{let e=lt(i.graphOptimizationLevel??`all`),a=ut(i.executionMode??`sequential`),o=typeof i.logId==`string`?U(i.logId,r):0,s=i.logSeverityLevel??2;if(!Number.isInteger(s)||s<0||s>4)throw Error(`log severity level is not valid: ${s}`);let c=i.logVerbosityLevel??0;if(!Number.isInteger(c)||c<0||c>4)throw Error(`log verbosity level is not valid: ${c}`);let l=typeof i.optimizedModelFilePath==`string`?U(i.optimizedModelFilePath,r):0;if(n=t._OrtCreateSessionOptions(e,!!i.enableCpuMemArena,!!i.enableMemPattern,a,!!i.enableProfiling,0,o,s,c,l),n===0&&W(`Can't create session options.`),i.executionProviders&&await G(n,i.executionProviders,r),i.enableGraphCapture!==void 0){if(typeof i.enableGraphCapture!=`boolean`)throw Error(`enableGraphCapture must be a boolean value: ${i.enableGraphCapture}`);ft(n,`enableGraphCapture`,i.enableGraphCapture.toString(),r)}if(i.freeDimensionOverrides)for(let[e,a]of Object.entries(i.freeDimensionOverrides)){if(typeof e!=`string`)throw Error(`free dimension override name must be a string: ${e}`);if(typeof a!=`number`||!Number.isInteger(a)||a<0)throw Error(`free dimension override value must be a non-negative integer: ${a}`);let i=U(e,r);t._OrtAddFreeDimensionOverride(n,i,a)!==0&&W(`Can't set a free dimension override: ${e} - ${a}.`)}return i.extra!==void 0&&at(i.extra,``,/* @__PURE__ */ new WeakSet,(e,t)=>{ft(n,e,t,r)}),[n,r]}catch(e){throw n!==0&&t._OrtReleaseSessionOptions(n)!==0&&W(`Can't release session options.`),r.forEach(e=>t._free(e)),e}}}),ht,gt,K,_t,vt,yt,bt,xt,St=l(()=>{ht=e=>{switch(e){case`int8`:return 3;case`uint8`:return 2;case`bool`:return 9;case`int16`:return 5;case`uint16`:return 4;case`int32`:return 6;case`uint32`:return 12;case`float16`:return 10;case`float32`:return 1;case`float64`:return 11;case`string`:return 8;case`int64`:return 7;case`uint64`:return 13;case`int4`:return 22;case`uint4`:return 21;default:throw Error(`unsupported data type: ${e}`)}},gt=e=>{switch(e){case 3:return`int8`;case 2:return`uint8`;case 9:return`bool`;case 5:return`int16`;case 4:return`uint16`;case 6:return`int32`;case 12:return`uint32`;case 10:return`float16`;case 1:return`float32`;case 11:return`float64`;case 8:return`string`;case 7:return`int64`;case 13:return`uint64`;case 22:return`int4`;case 21:return`uint4`;default:throw Error(`unsupported data type: ${e}`)}},K=(e,t)=>{let n=[-1,4,1,1,2,2,4,8,-1,1,2,8,4,8,-1,-1,-1,-1,-1,-1,-1,.5,.5][e],r=typeof t==`number`?t:t.reduce((e,t)=>e*t,1);return n>0?Math.ceil(r*n):void 0},_t=e=>{switch(e){case`float16`:return typeof Float16Array<`u`&&Float16Array.from?Float16Array:Uint16Array;case`float32`:return Float32Array;case`uint8`:return Uint8Array;case`int8`:return Int8Array;case`uint16`:return Uint16Array;case`int16`:return Int16Array;case`int32`:return Int32Array;case`bool`:return Uint8Array;case`float64`:return Float64Array;case`uint32`:return Uint32Array;case`int64`:return BigInt64Array;case`uint64`:return BigUint64Array;default:throw Error(`unsupported type: ${e}`)}},vt=e=>{switch(e){case`verbose`:return 0;case`info`:return 1;case`warning`:return 2;case`error`:return 3;case`fatal`:return 4;default:throw Error(`unsupported logging level: ${e}`)}},yt=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,bt=e=>e===`float32`||e===`float16`||e===`int32`||e===`int64`||e===`uint32`||e===`uint64`||e===`int8`||e===`uint8`||e===`bool`||e===`uint4`||e===`int4`,xt=e=>{switch(e){case`none`:return 0;case`cpu`:return 1;case`cpu-pinned`:return 2;case`texture`:return 3;case`gpu-buffer`:return 4;case`ml-tensor`:return 5;default:throw Error(`unsupported data location: ${e}`)}}}),Ct,wt=l(()=>{Ee(),Ct=async e=>{if(typeof e==`string`){let t=await fetch(e);if(!t.ok)throw Error(`failed to load external data file: ${e}`);let n=t.headers.get(`Content-Length`),r=n?parseInt(n,10):0;if(r<1073741824)return new Uint8Array(await t.arrayBuffer());{if(!t.body)throw Error(`failed to load external data file: ${e}, no response body.`);let n=t.body.getReader(),i;try{i=new ArrayBuffer(r)}catch(e){if(e instanceof RangeError){let e=Math.ceil(r/65536);i=new WebAssembly.Memory({initial:e,maximum:e}).buffer}else throw e}let a=0;for(;;){let{done:e,value:t}=await n.read();if(e)break;let r=t.byteLength;new Uint8Array(i,a,r).set(t),a+=r}return new Uint8Array(i,0,r)}}return e instanceof Blob?new Uint8Array(await e.arrayBuffer()):e instanceof Uint8Array?e:new Uint8Array(e)}}),Tt,q,Et,J,Dt,Ot,kt,At,jt,Mt,Nt,Pt,Ft,It=l(()=>{z(),ct(),mt(),St(),it(),ot(),wt(),Tt=(e,t)=>{H()._OrtInit(e,t)!==0&&W(`Can't initialize onnxruntime.`)},q=async e=>{Tt(e.wasm.numThreads,vt(e.logLevel))},Et=async(e,t)=>{H().asyncInit?.();let n=e.webgpu.adapter;if(t===`webgpu`){if(typeof navigator>`u`||!navigator.gpu)throw Error(`WebGPU is not supported in current environment`);if(n){if(typeof n.limits!=`object`||typeof n.features!=`object`||typeof n.requestDevice!=`function`)throw Error("Invalid GPU adapter set in `env.webgpu.adapter`. It must be a GPUAdapter object.")}else{let t=e.webgpu.powerPreference;if(t!==void 0&&t!==`low-power`&&t!==`high-performance`)throw Error(`Invalid powerPreference setting: "${t}"`);let r=e.webgpu.forceFallbackAdapter;if(r!==void 0&&typeof r!=`boolean`)throw Error(`Invalid forceFallbackAdapter setting: "${r}"`);if(n=await navigator.gpu.requestAdapter({powerPreference:t,forceFallbackAdapter:r}),!n)throw Error(`Failed to get GPU adapter. You may need to enable flag "--enable-unsafe-webgpu" if you are using Chrome.`)}}if(t===`webnn`&&(typeof navigator>`u`||!navigator.ml))throw Error(`WebNN is not supported in current environment`)},J=/* @__PURE__ */ new Map,Dt=e=>{let t=H(),n=t.stackSave();try{let n=t.PTR_SIZE,r=t.stackAlloc(2*n);t._OrtGetInputOutputCount(e,r,r+n)!==0&&W(`Can't get session input/output count.`);let i=n===4?`i32`:`i64`;return[Number(t.getValue(r,i)),Number(t.getValue(r+n,i))]}finally{t.stackRestore(n)}},Ot=(e,t)=>{let n=H(),r=n.stackSave(),i=0;try{let r=n.PTR_SIZE,a=n.stackAlloc(2*r);n._OrtGetInputOutputMetadata(e,t,a,a+r)!==0&&W(`Can't get session input/output metadata.`);let o=Number(n.getValue(a,`*`));i=Number(n.getValue(a+r,`*`));let s=n.HEAP32[i/4];if(s===0)return[o,0];let c=n.HEAPU32[i/4+1],l=[];for(let e=0;e<c;e++){let t=Number(n.getValue(i+8+e*r,`*`));l.push(t===0?Number(n.getValue(i+8+(e+c)*r,`*`)):n.UTF8ToString(t))}return[o,s,l]}finally{n.stackRestore(r),i!==0&&n._OrtFree(i)}},kt=e=>{let t=H(),n=t._malloc(e.byteLength);if(n===0)throw Error(`Can't create a session. failed to allocate a buffer of size ${e.byteLength}.`);return t.HEAPU8.set(e,n),[n,e.byteLength]},At=async(e,t)=>{let n,r,i=H();Array.isArray(e)?[n,r]=e:e.buffer===i.HEAPU8.buffer?[n,r]=[e.byteOffset,e.byteLength]:[n,r]=kt(e);let a=0,o=0,s=[],c=[],l=[];try{if([o,s]=await pt(t),t?.externalData&&i.mountExternalData){let e=[];for(let n of t.externalData){let t=typeof n==`string`?n:n.path;e.push(Ct(typeof n==`string`?n:n.data).then(e=>{i.mountExternalData(t,e)}))}await Promise.all(e)}for(let e of t?.executionProviders??[])if((typeof e==`string`?e:e.name)===`webnn`){if(i.shouldTransferToMLTensor=!1,typeof e!=`string`){let t=e,n=t?.context,r=t?.gpuDevice,a=t?.deviceType,o=t?.powerPreference;i.currentContext=n||(r?await i.webnnCreateMLContext(r):await i.webnnCreateMLContext({deviceType:a,powerPreference:o}))}else i.currentContext=await i.webnnCreateMLContext();break}a=await i._OrtCreateSession(n,r,o),i.webgpuOnCreateSession?.(a),a===0&&W(`Can't create a session.`),i.jsepOnCreateSession?.(),i.currentContext&&(i.webnnRegisterMLContext(a,i.currentContext),i.currentContext=void 0,i.shouldTransferToMLTensor=!0);let[e,u]=Dt(a),d=!!t?.enableGraphCapture,f=[],p=[],m=[],h=[];for(let t=0;t<e;t++){let[e,n,r]=Ot(a,t);e===0&&W(`Can't get an input name.`),c.push(e);let o=i.UTF8ToString(e);f.push(o),m.push(n===0?{name:o,isTensor:!1}:{name:o,isTensor:!0,type:gt(n),shape:r})}for(let t=0;t<u;t++){let[n,r,o]=Ot(a,t+e);n===0&&W(`Can't get an output name.`),l.push(n);let s=i.UTF8ToString(n);p.push(s),h.push(r===0?{name:s,isTensor:!1}:{name:s,isTensor:!0,type:gt(r),shape:o})}return J.set(a,[a,c,l,null,d,!1]),[a,f,p,m,h]}catch(e){throw c.forEach(e=>i._OrtFree(e)),l.forEach(e=>i._OrtFree(e)),a!==0&&i._OrtReleaseSession(a)!==0&&W(`Can't release session.`),e}finally{i._free(n),o!==0&&i._OrtReleaseSessionOptions(o)!==0&&W(`Can't release session options.`),s.forEach(e=>i._free(e)),i.unmountExternalData?.()}},jt=e=>{let t=H(),n=J.get(e);if(!n)throw Error(`cannot release session. invalid session id: ${e}`);let[r,i,a,o,s]=n;o&&(s&&t._OrtClearBoundOutputs(o.handle)!==0&&W(`Can't clear bound outputs.`),t._OrtReleaseBinding(o.handle)!==0&&W(`Can't release IO binding.`)),t.jsepOnReleaseSession?.(e),t.webnnOnReleaseSession?.(e),t.webgpuOnReleaseSession?.(e),i.forEach(e=>t._OrtFree(e)),a.forEach(e=>t._OrtFree(e)),t._OrtReleaseSession(r)!==0&&W(`Can't release session.`),J.delete(e)},Mt=async(e,t,n,r,i,a,o=!1)=>{if(!e){t.push(0);return}let s=H(),c=s.PTR_SIZE,l=e[0],u=e[1],d=e[3],f=d,p,m;if(l===`string`&&(d===`gpu-buffer`||d===`ml-tensor`))throw Error(`String tensor is not supported on GPU.`);if(o&&d!==`gpu-buffer`)throw Error(`External buffer must be provided for input/output index ${a} when enableGraphCapture is true.`);if(d===`gpu-buffer`){let t=e[2].gpuBuffer;m=K(ht(l),u);{let e=s.jsepRegisterBuffer;if(!e)throw Error(`Tensor location "gpu-buffer" is not supported without using WebGPU.`);p=e(r,a,t,m)}}else if(d===`ml-tensor`){let t=e[2].mlTensor;m=K(ht(l),u);let n=s.webnnRegisterMLTensor;if(!n)throw Error(`Tensor location "ml-tensor" is not supported without using WebNN.`);p=n(r,t,ht(l),u)}else{let t=e[2];if(Array.isArray(t)){m=c*t.length,p=s._malloc(m),n.push(p);for(let e=0;e<t.length;e++){if(typeof t[e]!=`string`)throw TypeError(`tensor data at index ${e} is not a string`);s.setValue(p+e*c,U(t[e],n),`*`)}}else{let e=s.webnnIsGraphInput,a=s.webnnIsGraphOutput;if(l!==`string`&&e&&a){let o=s.UTF8ToString(i);if(e(r,o)||a(r,o)){let e=ht(l);m=K(e,u),f=`ml-tensor`;let n=s.webnnCreateTemporaryTensor,i=s.webnnUploadTensor;if(!n||!i)throw Error(`Tensor location "ml-tensor" is not supported without using WebNN.`);let a=await n(r,e,u);i(a,new Uint8Array(t.buffer,t.byteOffset,t.byteLength)),p=a}else m=t.byteLength,p=s._malloc(m),n.push(p),s.HEAPU8.set(new Uint8Array(t.buffer,t.byteOffset,m),p)}else m=t.byteLength,p=s._malloc(m),n.push(p),s.HEAPU8.set(new Uint8Array(t.buffer,t.byteOffset,m),p)}}let h=s.stackSave(),g=s.stackAlloc(4*u.length);try{u.forEach((e,t)=>s.setValue(g+t*c,e,c===4?`i32`:`i64`));let e=s._OrtCreateTensor(ht(l),p,m,g,u.length,xt(f));e===0&&W(`Can't create tensor for input/output. session=${r}, index=${a}.`),t.push(e)}finally{s.stackRestore(h)}},Nt=async(e,t,n,r,i,a)=>{let o=H(),s=o.PTR_SIZE,c=J.get(e);if(!c)throw Error(`cannot run inference. invalid session id: ${e}`);let l=c[0],u=c[1],d=c[2],f=c[3],p=c[4];c[5];let m=t.length,h=r.length,g=0,_=[],v=[],y=[],ee=[],b=o.stackSave(),te=o.stackAlloc(m*s),x=o.stackAlloc(m*s),S=o.stackAlloc(h*s),C=o.stackAlloc(h*s);try{[g,_]=st(a),F(`wasm prepareInputOutputTensor`);for(let r=0;r<m;r++)await Mt(n[r],v,ee,e,u[t[r]],t[r],p);for(let t=0;t<h;t++)await Mt(i[t],y,ee,e,d[r[t]],m+r[t],p);I(`wasm prepareInputOutputTensor`);for(let e=0;e<m;e++)o.setValue(te+e*s,v[e],`*`),o.setValue(x+e*s,u[t[e]],`*`);for(let e=0;e<h;e++)o.setValue(S+e*s,y[e],`*`),o.setValue(C+e*s,d[r[e]],`*`);o.jsepOnRunStart?.(l),o.webnnOnRunStart?.(l);let c;c=await o._OrtRun(l,x,te,m,C,h,S,g),c!==0&&W(`failed to call OrtRun().`);let b=[],ne=[];F(`wasm ProcessOutputTensor`);for(let t=0;t<h;t++){let n=Number(o.getValue(S+t*s,`*`));if(n===y[t]){b.push(i[t]);continue}let a=o.stackSave(),c=o.stackAlloc(4*s),l=!1,u,d=0;try{o._OrtGetTensorData(n,c,c+s,c+2*s,c+3*s)!==0&&W(`Can't access output tensor data on index ${t}.`);let i=s===4?`i32`:`i64`,a=Number(o.getValue(c,i));d=o.getValue(c+s,`*`);let p=o.getValue(c+s*2,`*`),m=Number(o.getValue(c+s*3,i)),h=[];for(let e=0;e<m;e++)h.push(Number(o.getValue(p+e*s,i)));o._OrtFree(p)!==0&&W(`Can't free memory for tensor dims.`);let g=h.reduce((e,t)=>e*t,1);u=gt(a);let _=f?.outputPreferredLocations[r[t]];if(u===`string`){if(_===`gpu-buffer`||_===`ml-tensor`)throw Error(`String tensor is not supported on GPU.`);let e=[];for(let t=0;t<g;t++){let n=o.getValue(d+t*s,`*`),r=o.getValue(d+(t+1)*s,`*`),i=t===g-1?void 0:r-n;e.push(o.UTF8ToString(n,i))}b.push([u,h,e,`cpu`])}else if(_===`gpu-buffer`&&g>0){let e=o.jsepGetBuffer;if(!e)throw Error(`preferredLocation "gpu-buffer" is not supported without using WebGPU.`);let t=e(d),r=K(a,g);if(r===void 0||!yt(u))throw Error(`Unsupported data type: ${u}`);l=!0,b.push([u,h,{gpuBuffer:t,download:o.jsepCreateDownloader(t,r,u),dispose:()=>{o._OrtReleaseTensor(n)!==0&&W(`Can't release tensor.`)}},`gpu-buffer`])}else if(_===`ml-tensor`&&g>0){let t=o.webnnEnsureTensor,r=o.webnnIsGraphInputOutputTypeSupported;if(!t||!r)throw Error(`preferredLocation "ml-tensor" is not supported without using WebNN.`);if(K(a,g)===void 0||!bt(u))throw Error(`Unsupported data type: ${u}`);if(!r(e,u,!1))throw Error(`preferredLocation "ml-tensor" for ${u} output is not supported by current WebNN Context.`);let i=await t(e,d,a,h,!1);l=!0,b.push([u,h,{mlTensor:i,download:o.webnnCreateMLTensorDownloader(d,u),dispose:()=>{o.webnnReleaseTensorId(d),o._OrtReleaseTensor(n)}},`ml-tensor`])}else if(_===`ml-tensor-cpu-output`&&g>0){let e=o.webnnCreateMLTensorDownloader(d,u)(),t=b.length;l=!0,ne.push((async()=>{let r=[t,await e];return o.webnnReleaseTensorId(d),o._OrtReleaseTensor(n),r})()),b.push([u,h,[],`cpu`])}else{let e=new(_t(u))(g);new Uint8Array(e.buffer,e.byteOffset,e.byteLength).set(o.HEAPU8.subarray(d,d+e.byteLength)),b.push([u,h,e,`cpu`])}}finally{o.stackRestore(a),u===`string`&&d&&o._free(d),l||o._OrtReleaseTensor(n)}}f&&!p&&(o._OrtClearBoundOutputs(f.handle)!==0&&W(`Can't clear bound outputs.`),J.set(e,[l,u,d,f,p,!1]));for(let[e,t]of await Promise.all(ne))b[e][2]=t;return I(`wasm ProcessOutputTensor`),b}finally{o.webnnOnRunEnd?.(l),o.stackRestore(b),v.forEach(e=>o._OrtReleaseTensor(e)),y.forEach(e=>o._OrtReleaseTensor(e)),ee.forEach(e=>o._free(e)),g!==0&&o._OrtReleaseRunOptions(g),_.forEach(e=>o._free(e))}},Pt=e=>{let t=H(),n=J.get(e);if(!n)throw Error(`invalid session id`);let r=n[0],i=t._OrtEndProfiling(r);i===0&&W(`Can't get an profile file name.`),t._OrtFree(i)},Ft=e=>{let t=[];for(let n of e){let e=n[2];!Array.isArray(e)&&`buffer`in e&&t.push(e.buffer)}return t}}),Y,X,Lt,Rt,zt,Z,Bt,Vt,Q,$,Ht,Ut,Wt,Gt,Kt,qt,Jt,Yt,Xt=l(()=>{z(),It(),it(),Xe(),Y=()=>!!C.wasm.proxy&&typeof document<`u`,Lt=!1,Rt=!1,zt=!1,Vt=/* @__PURE__ */ new Map,Q=(e,t)=>{let n=Vt.get(e);n?n.push(t):Vt.set(e,[t])},$=()=>{if(Lt||!Rt||zt||!X)throw Error(`worker not ready`)},Ht=e=>{switch(e.data.type){case`init-wasm`:Lt=!1,e.data.err?(zt=!0,Bt[1](e.data.err)):(Rt=!0,Bt[0]()),Z&&=(URL.revokeObjectURL(Z),void 0);break;case`init-ep`:case`copy-from`:case`create`:case`release`:case`run`:case`end-profiling`:{let t=Vt.get(e.data.type);e.data.err?t.shift()[1](e.data.err):t.shift()[0](e.data.out);break}}},Ut=async()=>{if(!Rt){if(Lt)throw Error(`multiple calls to 'initWasm()' detected.`);if(zt)throw Error(`previous call to 'initWasm()' failed.`);if(Lt=!0,Y())return new Promise((e,t)=>{X?.terminate(),qe().then(([n,r])=>{try{X=r,X.onerror=e=>t(e),X.onmessage=Ht,Bt=[e,t];let i={type:`init-wasm`,in:C};!i.in.wasm.wasmPaths&&(n||Re)&&(i.in.wasm.wasmPaths={wasm:new URL(`/assets/ort-wasm-simd-threaded-CxTQ5xH-.wasm`,``+import.meta.url).href}),X.postMessage(i),Z=n}catch(e){t(e)}},t)});try{await rt(C.wasm),await q(C),Rt=!0}catch(e){throw zt=!0,e}finally{Lt=!1}}},Wt=async e=>{if(Y())return $(),new Promise((t,n)=>{Q(`init-ep`,[t,n]);let r={type:`init-ep`,in:{epName:e,env:C}};X.postMessage(r)});await Et(C,e)},Gt=async e=>Y()?($(),new Promise((t,n)=>{Q(`copy-from`,[t,n]);let r={type:`copy-from`,in:{buffer:e}};X.postMessage(r,[e.buffer])})):kt(e),Kt=async(e,t)=>{if(Y()){if(t?.preferredOutputLocation)throw Error(`session option "preferredOutputLocation" is not supported for proxy.`);return $(),new Promise((n,r)=>{Q(`create`,[n,r]);let i={type:`create`,in:{model:e,options:{...t}}},a=[];e instanceof Uint8Array&&a.push(e.buffer),X.postMessage(i,a)})}return At(e,t)},qt=async e=>{if(Y())return $(),new Promise((t,n)=>{Q(`release`,[t,n]);let r={type:`release`,in:e};X.postMessage(r)});jt(e)},Jt=async(e,t,n,r,i,a)=>{if(Y()){if(n.some(e=>e[3]!==`cpu`))throw Error(`input tensor on GPU is not supported for proxy.`);if(i.some(e=>e))throw Error(`pre-allocated output tensor is not supported for proxy.`);return $(),new Promise((i,o)=>{Q(`run`,[i,o]);let s=n,c={type:`run`,in:{sessionId:e,inputIndices:t,inputs:s,outputIndices:r,options:a}};X.postMessage(c,Ft(s))})}return Nt(e,t,n,r,i,a)},Yt=async e=>{if(Y())return $(),new Promise((t,n)=>{Q(`end-profiling`,[t,n]);let r={type:`end-profiling`,in:e};X.postMessage(r)});Pt(e)}}),Zt,Qt,$t,en=l(()=>{z(),Xt(),St(),Ee(),wt(),Zt=(e,t)=>{switch(e.location){case`cpu`:return[e.type,e.dims,e.data,`cpu`];case`gpu-buffer`:return[e.type,e.dims,{gpuBuffer:e.gpuBuffer},`gpu-buffer`];case`ml-tensor`:return[e.type,e.dims,{mlTensor:e.mlTensor},`ml-tensor`];default:throw Error(`invalid data location: ${e.location} for ${t()}`)}},Qt=e=>{switch(e[3]){case`cpu`:return new M(e[0],e[2],e[1]);case`gpu-buffer`:{let t=e[0];if(!yt(t))throw Error(`not supported data type: ${t} for deserializing GPU tensor`);let{gpuBuffer:n,download:r,dispose:i}=e[2];return M.fromGpuBuffer(n,{dataType:t,dims:e[1],download:r,dispose:i})}case`ml-tensor`:{let t=e[0];if(!bt(t))throw Error(`not supported data type: ${t} for deserializing MLTensor tensor`);let{mlTensor:n,download:r,dispose:i}=e[2];return M.fromMLTensor(n,{dataType:t,dims:e[1],download:r,dispose:i})}default:throw Error(`invalid data location: ${e[3]}`)}},$t=class{async fetchModelAndCopyToWasmMemory(e){return Gt(await Ct(e))}async loadModel(e,t){N();let n;n=typeof e==`string`?await this.fetchModelAndCopyToWasmMemory(e):e,[this.sessionId,this.inputNames,this.outputNames,this.inputMetadata,this.outputMetadata]=await Kt(n,t),P()}async dispose(){return qt(this.sessionId)}async run(e,t,n){N();let r=[],i=[];Object.entries(e).forEach(e=>{let t=e[0],n=e[1],a=this.inputNames.indexOf(t);if(a===-1)throw Error(`invalid input '${t}'`);r.push(n),i.push(a)});let a=[],o=[];Object.entries(t).forEach(e=>{let t=e[0],n=e[1],r=this.outputNames.indexOf(t);if(r===-1)throw Error(`invalid output '${t}'`);a.push(n),o.push(r)});let s=r.map((e,t)=>Zt(e,()=>`input "${this.inputNames[i[t]]}"`)),c=a.map((e,t)=>e?Zt(e,()=>`output "${this.outputNames[o[t]]}"`):null),l=await Jt(this.sessionId,i,s,o,c,n),u={};for(let e=0;e<l.length;e++)u[this.outputNames[o[e]]]=a[e]??Qt(l[e]);return P(),u}startProfiling(){}endProfiling(){Yt(this.sessionId)}}}),tn={};u(tn,{OnnxruntimeWebAssemblyBackend:()=>rn,initializeFlags:()=>nn,wasmBackend:()=>an});var nn,rn,an,on=l(()=>{z(),Xt(),en(),nn=()=>{(typeof C.wasm.initTimeout!=`number`||C.wasm.initTimeout<0)&&(C.wasm.initTimeout=0);let e=C.wasm.simd;if(typeof e!=`boolean`&&e!==void 0&&e!==`fixed`&&e!==`relaxed`&&(console.warn(`Property "env.wasm.simd" is set to unknown value "${e}". Reset it to \`false\` and ignore SIMD feature checking.`),C.wasm.simd=!1),typeof C.wasm.proxy!=`boolean`&&(C.wasm.proxy=!1),typeof C.wasm.trace!=`boolean`&&(C.wasm.trace=!1),typeof C.wasm.numThreads!=`number`||!Number.isInteger(C.wasm.numThreads)||C.wasm.numThreads<=0){if(typeof self<`u`&&!self.crossOriginIsolated)C.wasm.numThreads=1;else{let e=typeof navigator>`u`?c(`node:os`).cpus().length:navigator.hardwareConcurrency;C.wasm.numThreads=Math.min(4,Math.ceil((e||1)/2))}}},rn=class{async init(e){nn(),await Ut(),await Wt(e)}async createInferenceSessionHandler(e,t){let n=new $t;return await n.loadModel(e,t),n}},an=new rn});z(),z(),z();var sn=`1.23.2`,cn=Te;{let e=(on(),f(tn)).wasmBackend;h(`cpu`,e,10),h(`wasm`,e,10)}Object.defineProperty(C.versions,"web",{value:sn,enumerable:!0});var ln=`/assets/silero_vad-Dt9-bTDn.onnx`;[.../* @__PURE__ */ new Set([`um`,`umm`,`uh`,`uhh`,`uhm`,`erm`,`er`,`eh`,`ah`,`hmm`,`hm`,`mm`,`mmm`,`mhm`,`mm-hmm`,`uh-huh`])];const un=Object.freeze({minSpeechMs:300,endSilenceMs:350,trailingKeepMs:200,preRollMs:300,holdMs:1600,finishedHoldMs:1e3});un.trailingKeepMs;const dn=Object.freeze({startProb:.6,endProb:.35,speakingStartProb:.85,minSpeechMs:250,endSilenceMs:un.endSilenceMs,maxSegmentMs:6e4,gateDb:3,energyMarginDb:10,energyMinSpeechMs:un.minSpeechMs});Object.freeze([`low`,`normal`,`high`]),Object.freeze({low:Object.freeze({...dn,startProb:.75,endProb:.45,speakingStartProb:.92,minSpeechMs:350,gateDb:6,energyMarginDb:13,energyMinSpeechMs:400}),normal:dn,high:Object.freeze({...dn,startProb:.45,endProb:.25,speakingStartProb:.75,minSpeechMs:180,gateDb:0,energyMarginDb:7,energyMinSpeechMs:250})});var fn=class e{ort;session;state=/* @__PURE__ */ new Float32Array(256);context=/* @__PURE__ */ new Float32Array(64);sr;constructor(e,t){this.ort=e,this.session=t,this.sr=new e.Tensor(`int64`,BigInt64Array.from([BigInt(16e3)]),[])}static async load(t,n){let r=await t.InferenceSession.create(n,{executionProviders:[`wasm`],graphOptimizationLevel:`all`});return new e(t,r)}reset(){this.state=/* @__PURE__ */ new Float32Array(256),this.context=/* @__PURE__ */ new Float32Array(64)}async probability(e){if(e.length!==512)throw Error(`Silero VAD needs 512-sample chunks, got ${e.length}`);let t=/* @__PURE__ */ new Float32Array(576);t.set(this.context),t.set(e,64),this.context=e.slice(448);let n=await this.session.run({input:new this.ort.Tensor(`float32`,t,[1,t.length]),state:new this.ort.Tensor(`float32`,this.state,[2,1,128]),sr:this.sr});return this.state=Float32Array.from(n.stateN.data),n.output.data[0]}};C.wasm.numThreads=1,C.wasm.proxy=!1,C.logLevel=`error`;const pn=self,mn=performance.now(),hn=(async()=>{let e=await fetch(ln);if(!e.ok)throw Error(`model download failed (${e.status})`);return fn.load(r,new Uint8Array(await e.arrayBuffer()))})();hn.then(()=>pn.postMessage({type:`ready`,ms:Math.round(performance.now()-mn)}),e=>pn.postMessage({type:`error`,message:e instanceof Error?e.message:String(e)}));let gn=Promise.resolve();pn.onmessage=e=>{let t=e.data;gn=gn.then(async()=>{let e;try{e=await hn}catch(e){t.type===`chunk`&&pn.postMessage({type:`fail`,id:t.id,message:String(e?.message??e)});return}if(t.type===`reset`)return e.reset();if(t.type===`chunk`)try{pn.postMessage({type:`prob`,id:t.id,p:await e.probability(t.samples)})}catch(e){pn.postMessage({type:`fail`,id:t.id,message:String(e?.message??e)})}})};
|
package/web/dist/index.html
CHANGED
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
<link rel="icon" href="/icon.svg" type="image/svg+xml" />
|
|
29
29
|
<link rel="icon" href="/icon-192.png" type="image/png" sizes="192x192" />
|
|
30
30
|
<link rel="apple-touch-icon" href="/apple-touch-icon.png" />
|
|
31
|
-
<script type="module" crossorigin src="/assets/index-
|
|
31
|
+
<script type="module" crossorigin src="/assets/index-g4V9mfSr.js"></script>
|
|
32
32
|
<link rel="modulepreload" crossorigin href="/assets/ui-Dh1-78Cl.js">
|
|
33
33
|
<link rel="modulepreload" crossorigin href="/assets/pane-layout-DWXfDU-1.js">
|
|
34
34
|
<link rel="modulepreload" crossorigin href="/assets/plural-Bspvoqfq.js">
|